class ServerBackups::WebsiteRestore
Public Instance Methods
do_restore()
click to toggle source
# File lib/server_backups/website_restore.rb, line 12 def do_restore logger.warn "Moving old #{config.web_root} ---->>> #{config.web_root}.backup\n" \ 'You will have to delete it yourself.' make_copy_of_existing_web_root files_to_restore.each_with_index { |file, index| restore_file(file, index) } end
files_to_restore()
click to toggle source
# File lib/server_backups/website_restore.rb, line 7 def files_to_restore [all_files.full_backup_for(restore_point), *all_files.incremental_backups_for(restore_point)] end
Private Instance Methods
make_copy_of_existing_web_root()
click to toggle source
# File lib/server_backups/website_restore.rb, line 21 def make_copy_of_existing_web_root FileUtils.mv config.web_root, "#{config.web_root}.backup" \ if File.exist?(config.web_root) FileUtils.mkdir config.web_root end
restore_file(s3object, ordinal)
click to toggle source
# File lib/server_backups/website_restore.rb, line 31 def restore_file(s3object, ordinal) local_filename = File.join(working_dir, "#{ordinal}.tgz") s3object.get response_target: local_filename system untar_command(local_filename) unless last_command_succeeded? raise BackupCreationError.new("Received #{$CHILD_STATUS} from tar command.", self.class, 'restore') end logger.info "Restored #{File.basename(s3object.key)}" end
s3_prefix()
click to toggle source
# File lib/server_backups/website_restore.rb, line 27 def s3_prefix File.join(config.prefix, 'website_backup', '/') end
untar_command(local_filename)
click to toggle source
# File lib/server_backups/website_restore.rb, line 42 def untar_command(local_filename) <<-CMD tar zxp -C '/' --listed-incremental=/dev/null \ --no-check-device \ --file=#{local_filename} CMD end