aboutsummaryrefslogtreecommitdiffstats
path: root/lib/tasks/seeds.rake
blob: 9038b64f933899db324760d1a4477933ed368374 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
namespace :db do

  include Seedbank::DSL

  base_dependencies   = ['db:seed:original']
  override_dependency = ['db:seed:common']

  namespace :seed do
    seeds_environment = ENV.fetch("SEED_ENV", Rails.env)
    glob_seed_files_matching('/*/').each do |directory|
      environment = File.basename(directory)
      override_dependency << "db:seed:#{environment}" if defined?(Rails) && seeds_environment == environment
    end
  end

  # Override db:seed to run all the common and environments seeds plus the original db:seed.
  desc 'Load the seed data from db/seeds.rb, db/seeds/*.seeds.rb and db/seeds/ENVIRONMENT/*.seeds.rb. ENVIRONMENT is the env var SEED_ENV or the current environment in Rails.env.'
  override_seed_task :seed => override_dependency
end