lib/tasks/seed.rake in seedbank-0.0.3 vs lib/tasks/seed.rake in seedbank-0.0.4

- old
+ new

@@ -1,24 +1,22 @@ namespace :db do include Seedbank::DSL - base_dependencies = ['db:seed:original'] + base_dependencies = ['db:seed:original'] + override_dependency = [] + common_dependencies = [] # Create seed tasks for all the seeds in seeds_path and add them to the dependency # list along with the original db/seeds.rb. Dir.glob(File.join(seeds_root, '*.seeds.rb')).each do |seed_file| - base_dependencies << define_seed_task(seed_file) + common_dependencies << define_seed_task(seed_file) end - - # Change db:seed task to run all the base seeds tasks defined above. - desc <<-EOT - Loads the original seeds in db/seeds.rb followed by db/seeds/*.seeds.rb then - db/seeds/environment/*.seeds.rb - EOT - override_task :seed => base_dependencies + ["db:seed:#{Rails.env}"] + desc "Loads db/seeds.rb, db/seeds/*.seeds.rb." + task ['seed', 'common'] => base_dependencies + common_dependencies + # Glob through the directories under seeds_path assuming they are all environments # and create a task for each and add it to the dependency list. Then create a task # for the environment Dir[seeds_root + '/*/'].each do |e| environment = File.basename(e) @@ -27,8 +25,18 @@ Dir.glob(File.join(seeds_root, environment, '*.seeds.rb')).each do |seed_file| environment_dependencies << define_seed_task(seed_file) end desc "Loads db/seeds.rb, db/seeds/*.seeds.rb and any seeds in db/seeds/#{environment}/*.seeds.rb." - task ['seed', environment] => base_dependencies + environment_dependencies + task ['seed', environment] => ['db:seed:common'] + environment_dependencies + + override_dependency << "db:seed:#{environment}" if Rails.env == environment end + + # Change db:seed task to run all the base seeds tasks defined above. + desc <<-EOT + Loads the original seeds in db/seeds.rb followed by db/seeds/*.seeds.rb then + db/seeds/environment/*.seeds.rb + EOT + override_task :seed => ['db:seed:common'] + override_dependency + end