js_dir = ‘vendor/assets/javascripts/’
desc ‘Tag the default file versions for asset helpers’ task :tag_default do |t|
Rake::Task["tag"].invoke
end
task :tag do |t|
version = ENV['VERSION'] version ||= 'latest' puts "Target version: #{version.chomp('/')}" Dir.chdir(js_dir) do version_directories = Dir.glob("*").select { |fn| File.directory?(fn) }.sort.reverse if !(version_directories.include? version) puts "WARN: Specified version='#{version}' not found, setting to latest version: '#{version_directories.first}'" version = version_directories.first end new_files = Hash[*Dir.glob("#{version}/*.js").map {|longfn| [longfn.split(version+'/', 2)[1].chomp("-#{version}.js"), longfn]}.flatten] new_files.keys.each do |file| FileUtils.cp new_files[file], file.chomp('.js')+'.js', {verbose: true} end end
end