Class: Backup::Database::Riak
Instance Attribute Summary collapse
-
#cookie ⇒ Object
Cookie is the Erlang cookie/shared secret used to connect to the node.
-
#node ⇒ Object
Node is the node from which to perform the backup.
-
#user ⇒ Object
Username for the riak instance Default: riak.
Attributes inherited from Base
#database_id, #dump_path, #model
Instance Method Summary collapse
-
#initialize(model, database_id = nil, &block) ⇒ Riak
constructor
A new instance of Riak.
-
#perform! ⇒ Object
Performs the dump using ‘riak-admin backup`.
Methods included from Config::Helpers
Constructor Details
#initialize(model, database_id = nil, &block) ⇒ Riak
Returns a new instance of Riak.
19 20 21 22 23 24 25 26 |
# File 'lib/backup/database/riak.rb', line 19 def initialize(model, database_id = nil, &block) super instance_eval(&block) if block_given? @node ||= "[email protected]" ||= "riak" @user ||= "riak" end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Backup::Config::Helpers
Instance Attribute Details
#cookie ⇒ Object
Cookie is the Erlang cookie/shared secret used to connect to the node. Default: riak
12 13 14 |
# File 'lib/backup/database/riak.rb', line 12 def end |
#node ⇒ Object
Node is the node from which to perform the backup. Default: [email protected]
7 8 9 |
# File 'lib/backup/database/riak.rb', line 7 def node @node end |
#user ⇒ Object
Username for the riak instance Default: riak
17 18 19 |
# File 'lib/backup/database/riak.rb', line 17 def user @user end |
Instance Method Details
#perform! ⇒ Object
Performs the dump using ‘riak-admin backup`.
This will be stored in the final backup package as <trigger>/databases/<dump_filename>-<node>
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/backup/database/riak.rb', line 33 def perform! super dump_file = File.join(dump_path, dump_filename) with_riak_owned_dump_path do run("#{riakadmin} backup #{node} #{cookie} '#{dump_file}' node") end if model.compressor model.compressor.compress_with do |command, ext| dump_file << "-#{node}" # `riak-admin` appends `node` to the filename. run("#{command} -c '#{dump_file}' > '#{dump_file + ext}'") FileUtils.rm_f(dump_file) end end log!(:finished) end |