diff --git a/selfprivacy_api/backup/local_secret.py b/selfprivacy_api/backup/local_secret.py index 76237f3..389f3a3 100644 --- a/selfprivacy_api/backup/local_secret.py +++ b/selfprivacy_api/backup/local_secret.py @@ -15,13 +15,13 @@ redis = RedisPool().get_connection() class LocalBackupSecret: @staticmethod - def get(): + def get() -> str: """A secret string which backblaze/other clouds do not know. Serves as encryption key. """ if not LocalBackupSecret.exists(): LocalBackupSecret.reset() - return redis.get(REDIS_KEY) + return redis.get(REDIS_KEY) # type: ignore @staticmethod def set(secret: str): diff --git a/selfprivacy_api/backup/providers/provider.py b/selfprivacy_api/backup/providers/provider.py index c303d4e..fcf179b 100644 --- a/selfprivacy_api/backup/providers/provider.py +++ b/selfprivacy_api/backup/providers/provider.py @@ -12,6 +12,8 @@ class AbstractBackupProvider(ABC): def backuper(self) -> AbstractBackuper: raise NotImplementedError + name = "NONE" + def __init__(self, login="", key="", location="", repo_id=""): self.backuper.set_creds(login, key, location) self.login = login diff --git a/selfprivacy_api/graphql/queries/backup.py b/selfprivacy_api/graphql/queries/backup.py index c20be35..2cc8d83 100644 --- a/selfprivacy_api/graphql/queries/backup.py +++ b/selfprivacy_api/graphql/queries/backup.py @@ -28,10 +28,9 @@ class BackupConfiguration: class Backup: @strawberry.field def configuration(self) -> BackupConfiguration: - encryption_key = LocalBackupSecret.get() return BackupConfiguration( provider=BackupProvider[Backups.provider().name], - encryption_key=encryption_key.decode() if encryption_key else "", + encryption_key=LocalBackupSecret.get(), is_initialized=Backups.is_initted(), autobackup_period=Backups.autobackup_period_minutes(), location_name=Backups.provider().location,