Sha256: e9b6a04c03962f4689d276efa1064f8a4c8b23bdc1d523302d07d8f5fee449dd
Contents?: true
Size: 775 Bytes
Versions: 1
Compression:
Stored size: 775 Bytes
Contents
namespace :hydra do desc "Run ActiveFedora model migrations" task :migrate, [:models] => :environment do |t,args| migrator = Hydra::Migrate::Dispatcher.new migrator.load_migrations(File.join(Rails.root,'db/hydra')) models = (args[:models] || 'ActiveFedora::Base').split(/[,;\s]+/) models.each do |model| klass = model.split(/::/).inject(Module) { |k,c| k.const_get(c.to_sym) } klass.find_each({},{:cast=>true}) do |obj| while migrator.can_migrate? obj migrator.migrate!(obj) do |o,m,d| current = o.current_migration current = 'unknown version' if current.blank? $stderr.puts "Migrating #{o.class} #{o.pid} from #{current} to #{m[:to]}" end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
hydra-migrate-0.1.0 | lib/railties/hydra-migrate.rake |