diff --git a/aleksis/core/settings.py b/aleksis/core/settings.py index 27be0d7a0259f78ddbb83262586539eb4c3d3466..fe94ca0f05deb887c565648ab961a063849ef453 100644 --- a/aleksis/core/settings.py +++ b/aleksis/core/settings.py @@ -504,6 +504,13 @@ DBBACKUP_CONNECTOR_MAPPING = { "django_prometheus.db.backends.postgresql": "dbbackup.db.postgresql.PgDumpConnector", } +if _settings.get("backup.storage.type", "").lower() == "s3": + DBBACKUP_STORAGE = "storages.backends.s3boto3.S3Boto3Storage" + + DBBACKUP_STORAGE_OPTIONS = { + key: value for (key, value) in _settings.get("backup.storage.s3").items() + } + IMPERSONATE = {"USE_HTTP_REFERER": True, "REQUIRE_SUPERUSER": True, "ALLOW_SUPERUSER": True} DJANGO_TABLES2_TEMPLATE = "django_tables2/materialize.html" @@ -785,7 +792,7 @@ MEDIABACKUP_CHECK_SECONDS = _settings.get("backup.media.check_seconds", 7200) PROMETHEUS_EXPORT_MIGRATIONS = False -if _settings.get("storage.s3.enabled", False): +if _settings.get("storage.type", "").lower() == "s3": INSTALLED_APPS.append("storages") DEFAULT_FILE_STORAGE = "storages.backends.s3boto3.S3Boto3Storage" @@ -797,8 +804,8 @@ if _settings.get("storage.s3.enabled", False): "storage.s3.static.max_age_seconds", 24 * 60 * 60 ) - AWS_REGION = _settings.get("storage.s3.region", "") - AWS_ACCESS_KEY_ID = _settings.get("storage.s3.access_key_id", "") + AWS_REGION = _settings.get("storage.s3.region_name", "") + AWS_ACCESS_KEY_ID = _settings.get("storage.s3.access_key", "") AWS_SECRET_ACCESS_KEY = _settings.get("storage.s3.secret_key", "") AWS_SESSION_TOKEN = _settings.get("storage.s3.session_token", "") AWS_STORAGE_BUCKET_NAME = _settings.get("storage.s3.bucket_name", "")