Sha256: a738cf1463cb5da6ea598020bef79a63a06d4bb1caece3ebdb188ed656fa8ada
Contents?: true
Size: 1.54 KB
Versions: 4
Compression:
Stored size: 1.54 KB
Contents
require 'fileutils' desc "Create nondigest versions of all ckeditor digest assets" task "assets:precompile" => :environment do fingerprint = /\-([0-9a-f]{32})\./ for file in Dir["public/assets/ng-ckeditor/libs/ckeditor/**/*"] # Skip file unless it has a fingerprint next unless file =~ fingerprint # Get filename of this file without the digest # (example) public/assets/ckeditor/config.js nondigest = file.sub fingerprint, '.' # Create a filename relative to public/assets # (example) public/assets/ckeditor/config.js => ckeditor/config.js filename = nondigest.sub 'public/assets/', '' filename = filename.sub /.gz$/, '' # Remove .gz for correct asset checking # Fetch the latest digest for this file from assets latest_digest = Rails.application.assets.find_asset(filename).digest # Debug information STDOUT.puts '---- ' + file + ' ----' # Compare digest of this file to latest digest # [1] is the enclosed capture in the fingerprint regex above this_digest = file.match(fingerprint)[1] if (this_digest == latest_digest) # This file's digest matches latest digest, copy STDOUT.puts 'Matching digest, copying ' + file FileUtils.cp file, nondigest, verbose: true else # This file's digest doesn't match latest digest, ignore STDOUT.puts 'Latest digest: ' + latest_digest STDOUT.puts 'This digest: ' + this_digest STDOUT.puts 'Non-matching digest, not copying ' + file end # Debug information STDOUT.puts '---- end ----' end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
kms-0.5.0 | lib/tasks/precompile_hook.rake |
kms-0.4.2 | lib/tasks/precompile_hook.rake |
kms-0.4.1 | lib/tasks/precompile_hook.rake |
kms-0.4.0 | lib/tasks/precompile_hook.rake |