def schedule_backup_restore(self, backup_id, destination_uri, tags=None, source_database_name=None): backup = get_mbs().backup_collection.get_by_id(backup_id) destination = build_backup_source(destination_uri) logger.info("Scheduling a restore for backup '%s'" % backup.id) restore = Restore() restore.source_backup = backup restore.source_database_name = source_database_name restore.strategy = backup.strategy restore.destination = destination restore.tags = tags or restore.source_backup.tags restore.state = STATE_SCHEDULED restore.created_date = date_now() logger.info("Saving restore task: %s" % restore) restore_doc = restore.to_document() get_mbs().restore_collection.save_document(restore_doc) restore.id = restore_doc["_id"] return restore