class Capistrano::DBSync::Executor::Local

Public Class Methods

new(cap, config) click to toggle source
Calls superclass method Capistrano::DBSync::Executor::Base::new
# File lib/capistrano/db_sync/executor/local.rb, line 6
def initialize(cap, config)
  super(cap, config, :local)
  load_db_config!(File.read File.join("config", "database.yml"))
end

Public Instance Methods

restore!(dump_dir) click to toggle source
# File lib/capistrano/db_sync/executor/local.rb, line 11
def restore!(dump_dir)
  importer(dump_dir).restore(jobs: config[:local][:pg_jobs]).each do |cmd|
    cap.info "Running locally: #{cmd}"
    system(cmd)
  end

  cap.info "Completed database restore."
ensure
  clean_dump_if_needed!(dump_dir)
end

Private Instance Methods

clean_dump_if_needed!(dump_dir) click to toggle source
# File lib/capistrano/db_sync/executor/local.rb, line 24
def clean_dump_if_needed!(dump_dir)
  if cleanup?
    FileUtils.rm_rf dump_dir
    cap.info "Removed #{dump_dir} locally."
  else
    cap.info "Leaving #{dump_dir} locally. Use \"local: { cleanup: true }\" to remove."
  end
end
importer(dump_dir) click to toggle source
# File lib/capistrano/db_sync/executor/local.rb, line 33
def importer(dump_dir)
  Postgres::Importer.new(dump_dir, db_config)
end