diff --git a/selfprivacy_api/backup/__init__.py b/selfprivacy_api/backup/__init__.py index 7001d03..86445ba 100644 --- a/selfprivacy_api/backup/__init__.py +++ b/selfprivacy_api/backup/__init__.py @@ -269,6 +269,10 @@ class Backups: return snap + @staticmethod + def force_snapshot_reload(): + Backups.sync_all_snapshots() + @staticmethod def sync_all_snapshots(): upstream_snapshots = Backups.provider().backuper.get_snapshots() diff --git a/selfprivacy_api/graphql/mutations/backup_mutations.py b/selfprivacy_api/graphql/mutations/backup_mutations.py index 8ae19bb..c5c63bf 100644 --- a/selfprivacy_api/graphql/mutations/backup_mutations.py +++ b/selfprivacy_api/graphql/mutations/backup_mutations.py @@ -90,3 +90,9 @@ class BackupMutations: restore_snapshot(snap) return GenericJobMutationReturn() + + @strawberry.mutation(permission_classes=[IsAuthenticated]) + def force_snapshots_reload(self) -> GenericMutationReturn: + """Force snapshots reload""" + Backups.force_snapshot_reload() + return GenericMutationReturn()