34 lines
1.1 KiB
Python
34 lines
1.1 KiB
Python
"""Configuration for backup service."""
|
|
import os
|
|
from dataclasses import dataclass
|
|
|
|
|
|
@dataclass
|
|
class Config:
|
|
"""Backup service configuration from environment variables."""
|
|
|
|
# Database
|
|
DB_HOST: str = os.getenv("DB_HOST", "db")
|
|
DB_PORT: str = os.getenv("DB_PORT", "5432")
|
|
DB_NAME: str = os.getenv("DB_NAME", "marathon")
|
|
DB_USER: str = os.getenv("DB_USER", "marathon")
|
|
DB_PASSWORD: str = os.getenv("DB_PASSWORD", "123")
|
|
|
|
# S3
|
|
S3_BUCKET_NAME: str = os.getenv("S3_BUCKET_NAME", "")
|
|
S3_REGION: str = os.getenv("S3_REGION", "ru-1")
|
|
S3_ACCESS_KEY_ID: str = os.getenv("S3_ACCESS_KEY_ID", "")
|
|
S3_SECRET_ACCESS_KEY: str = os.getenv("S3_SECRET_ACCESS_KEY", "")
|
|
S3_ENDPOINT_URL: str = os.getenv("S3_ENDPOINT_URL", "")
|
|
S3_BACKUP_PREFIX: str = os.getenv("S3_BACKUP_PREFIX", "backups/")
|
|
|
|
# Telegram
|
|
TELEGRAM_BOT_TOKEN: str = os.getenv("TELEGRAM_BOT_TOKEN", "")
|
|
TELEGRAM_ADMIN_ID: str = os.getenv("TELEGRAM_ADMIN_ID", "947392854")
|
|
|
|
# Backup settings
|
|
BACKUP_RETENTION_DAYS: int = int(os.getenv("BACKUP_RETENTION_DAYS", "14"))
|
|
|
|
|
|
config = Config()
|