module MorpheusHeroku::Load
Public Instance Methods
run()
click to toggle source
# File lib/morpheus-heroku/load.rb, line 5 def run ensure_db_environment! if Rails.env.development? drop_active_connections! drop_database! create_database! load_database! end
Private Instance Methods
create_database!()
click to toggle source
# File lib/morpheus-heroku/load.rb, line 34 def create_database! Helper.logger("Rake::Task['db:create']") Rake::Task["db:create"].invoke end
drop_active_connections!()
click to toggle source
# File lib/morpheus-heroku/load.rb, line 15 def drop_active_connections! sql_command = <<~SQL SELECT pid, pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname = current_database() AND pid <> pg_backend_pid(); SQL Helper.bash_run(command: "psql -d #{MorpheusHeroku.configuration.database_name} -c '#{sql_command}'") end
drop_database!()
click to toggle source
# File lib/morpheus-heroku/load.rb, line 29 def drop_database! Helper.logger("Rake::Task['db:drop']") Rake::Task["db:drop"].invoke end
ensure_db_environment!()
click to toggle source
# File lib/morpheus-heroku/load.rb, line 25 def ensure_db_environment! Helper.bash_run(command: "bundle exec rake db:environment:set RAILS_ENV=development") end
load_database!()
click to toggle source
# File lib/morpheus-heroku/load.rb, line 39 def load_database! Helper.bash_run(command: "pg_restore -O -n public -d #{MorpheusHeroku.configuration.database_name} #{MorpheusHeroku.configuration.backup_location}") end