Class: Earth::Tasks
Instance Method Summary collapse
- #config ⇒ Object
- #init_bare ⇒ Object
- #init_earth_tasks ⇒ Object
-
#initialize ⇒ Tasks
constructor
A new instance of Tasks.
- #rails? ⇒ Boolean
Constructor Details
#initialize ⇒ Tasks
Returns a new instance of Tasks.
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/earth/tasks.rb', line 9 def initialize init_earth_tasks unless rails? namespace :db do unless rails? task :create => 'earth:db:create' task :drop => 'earth:db:drop' end task :migrate do Rake::Task['earth:db:migrate'].invoke end task :seed do Rake::Task['earth:db:seed'].invoke end end end |
Instance Method Details
#config ⇒ Object
50 51 52 53 54 |
# File 'lib/earth/tasks.rb', line 50 def config spec = ENV['DATABASE_URL'] resolver = ActiveRecord::Base::ConnectionSpecification::Resolver.new spec, {} resolver.spec.config.stringify_keys end |
#init_bare ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/earth/tasks.rb', line 32 def Object.const_set 'Rails', Earth Earth.module_eval do def self.logger @logger ||= Logger.new(STDOUT) end end require 'active_record' load 'active_record/railties/databases.rake' Rake::Task['db:load_config'].clear Rake::Task['db:create'].clear Rake::Task['db:drop'].clear Rake::Task['db:migrate'].clear Rake::Task['db:seed'].clear end |
#init_earth_tasks ⇒ Object
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 |
# File 'lib/earth/tasks.rb', line 56 def init_earth_tasks namespace :earth do namespace :db do task :create do create_database(config) end task :drop do drop_database_and_rescue(config) end task :load_config do if rails? Rake::Task['db:load_config'].invoke else Earth.connect end end task :migrate => :load_config do DataMiner::Run.auto_upgrade! Earth.reset_schemas! end task :seed => :load_config do require 'falls_back_on' FallsBackOn.clear if CacheMethod.config.generational? Earth.run_data_miner! end end end end |
#rails? ⇒ Boolean
27 28 29 30 |
# File 'lib/earth/tasks.rb', line 27 def rails? return @rails unless @rails.nil? @rails = Object.const_defined?('Rails') end |