From 1cefaefa3bbb3c23cbc94ad7f18e57977641caba Mon Sep 17 00:00:00 2001 From: Houkime <> Date: Fri, 7 Jul 2023 13:24:05 +0000 Subject: [PATCH] feature(backups): expose restore strategies to the API --- selfprivacy_api/graphql/mutations/backup_mutations.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/selfprivacy_api/graphql/mutations/backup_mutations.py b/selfprivacy_api/graphql/mutations/backup_mutations.py index adc3873..5c8163c 100644 --- a/selfprivacy_api/graphql/mutations/backup_mutations.py +++ b/selfprivacy_api/graphql/mutations/backup_mutations.py @@ -13,6 +13,7 @@ from selfprivacy_api.graphql.queries.backup import BackupConfiguration from selfprivacy_api.graphql.queries.backup import Backup from selfprivacy_api.graphql.queries.providers import BackupProvider from selfprivacy_api.graphql.common_types.jobs import job_to_api_job +from selfprivacy_api.graphql.common_types.backup import RestoreStrategy from selfprivacy_api.backup import Backups from selfprivacy_api.services import get_all_services, get_service_by_id @@ -115,7 +116,11 @@ class BackupMutations: ) @strawberry.mutation(permission_classes=[IsAuthenticated]) - def restore_backup(self, snapshot_id: str) -> GenericJobMutationReturn: + def restore_backup( + self, + snapshot_id: str, + strategy: RestoreStrategy = RestoreStrategy.DOWNLOAD_VERIFY_OVERWRITE, + ) -> GenericJobMutationReturn: """Restore backup""" snap = Backups.get_snapshot_by_id(snapshot_id) if snap is None: @@ -145,7 +150,7 @@ class BackupMutations: job=None, ) - restore_snapshot(snap) + restore_snapshot(snap, strategy) return GenericJobMutationReturn( success=True,