class SetupFilesToCloudFront < ActiveRecord::Migration include UploadColumnMigration def self.up setup_files_path = File.join(Rails.root, "public", "system", "setup_files") puts "Uploading setup files to CloudFront... (this may take a while)" Product.all.each do |product| if product.setup_file.instance_variable_get(:@storage).to_s == 's3' && product.setup_file.file? puts "Uploading #{product.setup_file.original_filename}..." upload_to_s3(product.setup_file, File.join(setup_files_path, product.id.to_s, product.setup_file.original_filename), product.setup_file.path(:original)) end end end def self.down end end