Sha256: a331b50556186746f2fc465083814b2c5252f49f86e7100c3a7776c7358eb900

Contents?: true

Size: 950 Bytes

Versions: 8

Compression:

Stored size: 950 Bytes

Contents

module Cardio
  # Utilities that may need to be run even when mods are not loaded.
  module Utils
    class << self
      def seed_test_db
        system "env RAILS_ENV=test bundle exec rake db:fixtures:load"
      end

      # deletes tmp directory within files directory
      # It's here because it gets called as part of cache clearing, which sometimes gets
      # called in a context where card mods are not loaded.
      # Why does cache clearing need to do this??
      def delete_tmp_files! id=nil
        raise "no files directory" unless files_dir

        delete_tmp_files id
      rescue StandardError
        Rails.logger.info "failed to remove tmp files"
      end

      private

      def delete_tmp_files id=nil
        dir = [files_dir, "tmp", id.to_s].compact.join "/"
        FileUtils.rm_rf dir, secure: true
      end

      def files_dir
        @files_dir ||= Cardio.paths["files"].existent.first
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
card-1.104.2 lib/cardio/utils.rb
card-1.104.1 lib/cardio/utils.rb
card-1.104.0 lib/cardio/utils.rb
card-1.103.4 lib/cardio/utils.rb
card-1.103.3 lib/cardio/utils.rb
card-1.103.2 lib/cardio/utils.rb
card-1.103.1 lib/cardio/utils.rb
card-1.103.0 lib/cardio/utils.rb