mirror of
https://git.selfprivacy.org/SelfPrivacy/selfprivacy-rest-api.git
synced 2025-03-11 09:03:50 +00:00
feature(backups): expose restore strategies to the API
This commit is contained in:
parent
2743441e1e
commit
1cefaefa3b
1 changed files with 7 additions and 2 deletions
|
@ -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.backup import Backup
|
||||||
from selfprivacy_api.graphql.queries.providers import BackupProvider
|
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.jobs import job_to_api_job
|
||||||
|
from selfprivacy_api.graphql.common_types.backup import RestoreStrategy
|
||||||
|
|
||||||
from selfprivacy_api.backup import Backups
|
from selfprivacy_api.backup import Backups
|
||||||
from selfprivacy_api.services import get_all_services, get_service_by_id
|
from selfprivacy_api.services import get_all_services, get_service_by_id
|
||||||
|
@ -115,7 +116,11 @@ class BackupMutations:
|
||||||
)
|
)
|
||||||
|
|
||||||
@strawberry.mutation(permission_classes=[IsAuthenticated])
|
@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"""
|
"""Restore backup"""
|
||||||
snap = Backups.get_snapshot_by_id(snapshot_id)
|
snap = Backups.get_snapshot_by_id(snapshot_id)
|
||||||
if snap is None:
|
if snap is None:
|
||||||
|
@ -145,7 +150,7 @@ class BackupMutations:
|
||||||
job=None,
|
job=None,
|
||||||
)
|
)
|
||||||
|
|
||||||
restore_snapshot(snap)
|
restore_snapshot(snap, strategy)
|
||||||
|
|
||||||
return GenericJobMutationReturn(
|
return GenericJobMutationReturn(
|
||||||
success=True,
|
success=True,
|
||||||
|
|
Loading…
Add table
Reference in a new issue