Sha256: 0e514f0b7c30a419daa7af2f22d33373a48c1729e39d7675354694d59d0b9281
Contents?: true
Size: 1.34 KB
Versions: 2
Compression:
Stored size: 1.34 KB
Contents
require 'pathname' require 'fileutils' require 'dassets/asset_file' require 'dassets/digests_file' module Dassets; end class Dassets::Runner; end class Dassets::Runner::CacheCommand attr_reader :files_root_path, :cache_root_path, :digests_file, :asset_files def initialize(cache_root_path) unless cache_root_path && File.directory?(cache_root_path) raise Dassets::Runner::CmdError, "specify an existing cache directory" end @files_root_path = Pathname.new(Dassets.config.files_path) @cache_root_path = Pathname.new(cache_root_path) @digests_file = Dassets::DigestsFile.new(Dassets.config.digests_file_path) @asset_files = @digests_file.asset_files end def run(write_files=true) begin @asset_files.each do |file| files_path = @files_root_path.join(file.path).to_s cache_path = @cache_root_path.join(file.cache_path).to_s if write_files FileUtils.mkdir_p File.dirname(cache_path) FileUtils.cp(files_path, cache_path) end end unless ENV['DASSETS_TEST_MODE'] $stdout.puts "#{@asset_files.size} files written to #{@cache_root_path}" end return write_files rescue Exception => e unless ENV['DASSETS_TEST_MODE'] $stderr.puts e, *e.backtrace; $stderr.puts "" end raise Dassets::Runner::CmdFail end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
dassets-0.2.0 | lib/dassets/runner/cache_command.rb |
dassets-0.1.0 | lib/dassets/runner/cache_command.rb |