module DB
Public Instance Methods
copy_db_cmd()
click to toggle source
# File lib/synchronizer/db.rb, line 9 def copy_db_cmd if dest = fetch(:sync_db_to, nil) scp_file(fetch(:db_dump_file), dest) else raise "missing variable sync_db_to" end end
copy_db_to_local()
click to toggle source
# File lib/synchronizer/db.rb, line 17 def copy_db_to_local download! "#{fetch(:db_dump_file)}", "#{fetch(:db_dump_file).split('/')[-1]}" end
dump_db()
click to toggle source
# File lib/synchronizer/db.rb, line 3 def dump_db _stage = fetch(:stage, nil).to_s cfg = read_db_config(_stage) execute pg_dump_cmd(cfg) end
Private Instance Methods
pg_dump_cmd(opts)
click to toggle source
# File lib/synchronizer/db.rb, line 23 def pg_dump_cmd(opts) db_dump_file = "#{shared_path}/#{opts.fetch('database')}.dump" set :db_dump_file, db_dump_file str = "PGPASSWORD=#{opts.fetch('password')} pg_dump -U #{opts.fetch('username')} -h #{opts.fetch('host')} -Fc #{opts.fetch('database')} -f #{db_dump_file}" str end
read_db_config(stage)
click to toggle source
# File lib/synchronizer/db.rb, line 31 def read_db_config(stage) db_cfg = YAML::load(capture("cat #{shared_path}/config/database.yml")) db_cfg[stage] end