Module: Dumpdb

Defined in:
lib/dumpdb.rb,
lib/dumpdb/db.rb,
lib/dumpdb/runner.rb,
lib/dumpdb/version.rb

Defined Under Namespace

Modules: Settings, SettingsDslMethods, SettingsMethods Classes: BadDatabaseName, Db, Runner

Constant Summary collapse

VERSION =
"2.0.0"

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(receiver) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/dumpdb.rb', line 11

def self.included(receiver)
  receiver.class_eval do
    include NsOptions
    options :settings do
      option 'ssh',          Settings::Ssh,          :default => ''
      option 'dump_file',    Settings::DumpFile,     :default => ''
      option 'source',       Settings::SourceTarget, :default => {}
      option 'target',       Settings::SourceTarget, :default => {}
      option 'dump_cmds',    Settings::CmdList,      :default => []
      option 'restore_cmds', Settings::CmdList,      :default => []
    end

    extend  SettingsDslMethods
    include SettingsMethods

    def self.inherited(subclass)
      subclass.settings.apply(self.settings.to_hash)
    end

  end
end

Instance Method Details

#after_cmd_run(*args) ⇒ Object



90
# File 'lib/dumpdb.rb', line 90

def after_cmd_run(*args);    end

#after_copy_dump(*args) ⇒ Object



84
# File 'lib/dumpdb.rb', line 84

def after_copy_dump(*args);  end

#after_dump(*args) ⇒ Object



82
# File 'lib/dumpdb.rb', line 82

def after_dump(*args);       end

#after_restore(*args) ⇒ Object



86
# File 'lib/dumpdb.rb', line 86

def after_restore(*args);    end

#after_run(*args) ⇒ Object



78
# File 'lib/dumpdb.rb', line 78

def after_run(*args);        end

#after_setup(*args) ⇒ Object



80
# File 'lib/dumpdb.rb', line 80

def after_setup(*args);      end

#after_teardown(*args) ⇒ Object



88
# File 'lib/dumpdb.rb', line 88

def after_teardown(*args);   end

#before_cmd_run(*args) ⇒ Object



89
# File 'lib/dumpdb.rb', line 89

def before_cmd_run(*args);   end

#before_copy_dump(*args) ⇒ Object



83
# File 'lib/dumpdb.rb', line 83

def before_copy_dump(*args); end

#before_dump(*args) ⇒ Object



81
# File 'lib/dumpdb.rb', line 81

def before_dump(*args);      end

#before_restore(*args) ⇒ Object



85
# File 'lib/dumpdb.rb', line 85

def before_restore(*args);   end

#before_run(*args) ⇒ Object

Callbacks



77
# File 'lib/dumpdb.rb', line 77

def before_run(*args);       end

#before_setup(*args) ⇒ Object



79
# File 'lib/dumpdb.rb', line 79

def before_setup(*args);     end

#before_teardown(*args) ⇒ Object



87
# File 'lib/dumpdb.rb', line 87

def before_teardown(*args);  end

#dump_cmd(&block) ⇒ Object



60
# File 'lib/dumpdb.rb', line 60

def dump_cmd(&block);   Settings::DumpCmd.new(block).value(self);    end

#restore_cmd(&block) ⇒ Object



61
# File 'lib/dumpdb.rb', line 61

def restore_cmd(&block) Settings::RestoreCmd.new(block).value(self); end

#run(cmd_runner = nil) ⇒ Object



71
72
73
# File 'lib/dumpdb.rb', line 71

def run(cmd_runner=nil)
  Runner.new(self, :cmd_runner => cmd_runner).run
end

#ssh?Boolean

Returns:

  • (Boolean)


63
64
65
# File 'lib/dumpdb.rb', line 63

def ssh?
  self.ssh && !self.ssh.empty?
end

#ssh_optsObject



67
68
69
# File 'lib/dumpdb.rb', line 67

def ssh_opts
  "-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o ConnectTimeout=10"
end