module MagicRecipes::Db
Db
- Deploy-Recipes¶ ↑
Some recipes to work with databases, especialy when you have an server, where you can't delete or create db's.
- Tasks:
-
:seed # => seed the database
:migrate # => migrate the database
:delete_tables # => delete all Tables of the Database!
:save_reset # => DB-Reset for user without dbcreate permission (deletes all tables than migrates again)
- Callbacks:
-
-
-
Public Class Methods
load_into(configuration)
click to toggle source
# File lib/magic_recipes/db.rb, line 20 def self.load_into(configuration) configuration.load do namespace :db do desc "seed the database" task :seed do if use_rvm run <<-CMD #{rvm_cmd} && cd #{latest_release} && #{rake} db:seed RAILS_ENV=#{rails_env} CMD else run "cd #{latest_release} && #{rake} db:seed RAILS_ENV=#{rails_env}" end end desc "migrate the database" task :migrate do if use_rvm run <<-CMD #{rvm_cmd} && cd #{latest_release} && #{rake} db:migrate RAILS_ENV=#{rails_env} CMD else run "cd #{latest_release} && #{rake} db:migrate RAILS_ENV=#{rails_env}" end end desc "drop the database" task :drop do if use_rvm run <<-CMD #{rvm_cmd} && cd #{latest_release} && #{rake} db:drop RAILS_ENV=#{rails_env} CMD else run "cd #{latest_release} && #{rake} db:drop RAILS_ENV=#{rails_env}" end end desc "reset the database" task :reset do if use_rvm run <<-CMD #{rvm_cmd} && cd #{latest_release} && #{rake} db:reset RAILS_ENV=#{rails_env} CMD else run "cd #{latest_release} && #{rake} db:reset RAILS_ENV=#{rails_env}" end end desc "create the database" task :create do if use_rvm run <<-CMD #{rvm_cmd} && cd #{latest_release} && #{rake} db:create RAILS_ENV=#{rails_env} CMD else run "cd #{latest_release} && #{rake} db:create RAILS_ENV=#{rails_env}" end end desc "delete all Tables of the Database!" task :delete_tables do if use_rvm run <<-CMD #{rvm_cmd} && cd #{latest_release} && RAILS_ENV=#{rails_env} rails runner "ActiveRecord::Base.connection.tables.each { |t| ActiveRecord::Base.connection.drop_table t }" CMD else run "cd #{latest_release} && RAILS_ENV=#{rails_env} rails runner 'ActiveRecord::Base.connection.tables.each { |t| ActiveRecord::Base.connection.drop_table t }'" end # => ActiveRecord::Base.connection.tables.each { |t| ActiveRecord::Base.connection.drop_table t } end desc "DB-Reset for user without dbcreate permission (deletes all tables than migrates again)" task :save_reset do delete_tables migrate end end # eof end end