Class: Jets::Commands::Db::Tasks
- Inherits:
-
Object
- Object
- Jets::Commands::Db::Tasks
- Defined in:
- lib/jets/commands/db/tasks.rb
Defined Under Namespace
Classes: Seeder
Class Method Summary collapse
-
.load! ⇒ Object
Ugly but it loads ActiveRecord database tasks.
Class Method Details
.load! ⇒ Object
Ugly but it loads ActiveRecord database tasks
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/jets/commands/db/tasks.rb', line 3 def self.load! # Lazy require rails so Rails const is only defined in jets db:* tasks require "rails" require "active_record" require "recursive-open-struct" # Jets.boot # Jets.boot here screws up jets -h, the db_config doesnt seem to match exactly # but seems to be working anyway. db_configs = Jets.application.config.database ActiveRecord::Tasks::DatabaseTasks.database_configuration = db_configs ActiveRecord::Tasks::DatabaseTasks.migrations_paths = ["db/migrate"] ActiveRecord::Tasks::DatabaseTasks.seed_loader = Seeder.new("#{Jets.root}db/seeds.rb") # Need to mock out the usage of Rails.application in: # activerecord-5.1.4/lib/active_record/tasks/database_tasks.rb Rails.application = RecursiveOpenStruct.new( config: { paths: { db: ["db"], } }, paths: { "db/migrate": ["db/migrate"] } ) load "active_record/railties/databases.rake" load File.("../environment-task.rake", __FILE__) end |