def restore_backup(self): arg_json = get_request_json() backup_id = arg_json.get('backupId') destination_uri = arg_json.get('destinationUri') no_index_restore = arg_json.get('noIndexRestore') no_users_restore = arg_json.get('noUsersRestore') no_roles_restore = arg_json.get('noRolesRestore') tags = arg_json.get('tags') source_database_name = arg_json.get('sourceDatabaseName') try: bs = self.backup_system r = bs.schedule_backup_restore(backup_id, destination_uri, source_database_name=source_database_name, no_index_restore=no_index_restore, no_users_restore=no_users_restore, no_roles_restore=no_roles_restore, tags=tags) return str(r) except Exception, e: msg = "Error while trying to restore backup %s: %s" % (backup_id, e) logger.error(msg) logger.error(traceback.format_exc()) send_api_error("restore-backup", e) return error_response(msg)
def get_backup(self, backup_id): try: backup = persistence.get_backup(backup_id) return str(backup) except Exception, e: msg = "Error while trying to get backup %s: %s" % (backup_id, e) logger.error(msg) logger.error(traceback.format_exc()) send_api_error("get-backup", e) return error_response(msg)
def delete_backup_plan(self, plan_id): try: result = self.backup_system.remove_plan(plan_id) return document_pretty_string(result) except Exception, e: msg = ("Error while trying to delete backup plan %s: %s" % (plan_id, e)) logger.error(msg) logger.error(traceback.format_exc()) send_api_error("delete-backup-plan", e) return error_response(msg)
def get_backup_database_names(self, backup_id): try: dbnames = self.backup_system.get_backup_database_names(backup_id) return document_pretty_string(dbnames) except Exception, e: msg = ("Error while trying to get backup database" " names %s: %s" %(backup_id, e)) logger.error(msg) logger.error(traceback.format_exc()) send_api_error("get-backup-database-names", e) return error_response(msg)
def delete_backup_plan(self, plan_id): try: deleted = self.backup_system.remove_plan(plan_id) return document_pretty_string({"deleted": deleted}) except Exception, e: msg = ("Error while trying to delete backup plan %s: %s" % (plan_id, e)) logger.error(msg) logger.error(traceback.format_exc()) send_api_error("delete-backup-plan", e) return error_response(msg)
def expire_backup(self, backup_id): try: exp_man = self.backup_system.backup_expiration_manager backup = persistence.get_backup(backup_id) result = exp_man.expire_backup(backup, force=True) return document_pretty_string(result) except Exception, e: msg = ("Error while trying to expire backup %s: %s" % (backup_id, e)) logger.error(msg) logger.error(traceback.format_exc()) send_api_error("expire-backup", e) return error_response(msg)
def get_destination_restore_status(self): destination_uri = request.args.get('destinationUri') try: status = self.backup_system.get_destination_restore_status( destination_uri) return document_pretty_string({"status": status}) except Exception, e: msg = ("Error while trying to get restore status for" " destination '%s': %s" % (destination_uri, e)) logger.error(msg) logger.error(traceback.format_exc()) send_api_error("get-destination-restore-status", e) return error_response(msg)
def get_destination_restore_status(self): destination_uri = request.args.get('destinationUri') try: status = self.backup_system.get_destination_restore_status( destination_uri) return document_pretty_string({ "status": status }) except Exception, e: msg = ("Error while trying to get restore status for" " destination '%s': %s" % (destination_uri, e)) logger.error(msg) logger.error(traceback.format_exc()) send_api_error("get-destination-restore-status", e) return error_response(msg)