Class: BackupMongoS3::Db
- Inherits:
-
Object
- Object
- BackupMongoS3::Db
- Defined in:
- lib/backup_mongo_s3/db.rb
Instance Method Summary collapse
- #dump(db_name, backup_path) ⇒ Object
-
#initialize(options) ⇒ Db
constructor
A new instance of Db.
- #restore(db_name, backup_path) ⇒ Object
Constructor Details
#initialize(options) ⇒ Db
Returns a new instance of Db.
4 5 6 7 |
# File 'lib/backup_mongo_s3/db.rb', line 4 def initialize() @options = @connection_options = connection() end |
Instance Method Details
#dump(db_name, backup_path) ⇒ Object
28 29 30 31 32 33 34 35 36 37 |
# File 'lib/backup_mongo_s3/db.rb', line 28 def dump(db_name, backup_path) command = 'mongodump' command << " #{@connection_options}" command << ' --dumpDbUsersAndRoles' if @options[:dump_db_users_and_roles] == true || @options[:dump_db_users_and_roles] == 1 command << " --db '#{db_name}' --out '#{backup_path}'" command << ' > /dev/null' system(command) raise "Error mongodump '#{db_name}'" unless $?.exitstatus.zero? end |
#restore(db_name, backup_path) ⇒ Object
40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/backup_mongo_s3/db.rb', line 40 def restore(db_name, backup_path) command = 'mongorestore' command << " #{@connection_options}" command << ' --restoreDbUsersAndRoles' if @options[:restore_db_users_and_roles] == true || @options[:restore_db_users_and_roles] == 1 command << ' --drop' if @options[:drop_collection] == true || @options[:drop_collection] == 1 command << " --db '#{db_name}' '#{backup_path}'" command << ' > /dev/null' system(command) raise "Error mongorestore '#{db_name}'" unless $?.exitstatus.zero? end |