Module: DreamhostPersonalBackup::Backup

Defined in:
lib/backup/backup.rb

Constant Summary collapse

RSYNC_COMMAND_ARGS =
['-e ssh', '-avzP', '--delete']

Class Method Summary collapse

Class Method Details

.run_for_target_directory(target_dir, config_parameters) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/backup/backup.rb', line 10

def self.run_for_target_directory(target_dir, config_parameters)
  check_for_required_parameters(config_parameters)

  user = config_parameters[:user]
  host = config_parameters[:host]
  logger = config_parameters[:logger]

  target_dir = File.expand_path(target_dir)

  logger.info("  Running backup for target directory: #{target_dir}")

  rsync_result = Rsync.run(target_dir, "#{user}@#{host}:~/", RSYNC_COMMAND_ARGS)

  log_rsync_result(rsync_result, logger)

  rsync_result.success?
end