config.py 820 B

1234567891011121314151617181920212223242526
  1. import os
  2. from dotenv import load_dotenv
  3. load_dotenv()
  4. class Settings:
  5. PROJECT_NAME: str = "Data Nexus"
  6. VERSION: str = "0.1.0"
  7. # Database
  8. DB_USER: str = os.getenv("DB_USER", "root")
  9. DB_PASSWORD: str = os.getenv("DB_PASSWORD", "")
  10. DB_HOST: str = os.getenv("DB_HOST", "localhost")
  11. DB_PORT: str = os.getenv("DB_PORT", "3306")
  12. DB_NAME: str = os.getenv("DB_NAME", "data_nexus")
  13. DATABASE_URL: str = f"mysql+pymysql://{DB_USER}:{DB_PASSWORD}@{DB_HOST}:{DB_PORT}/{DB_NAME}"
  14. # Gogs
  15. GOGS_URL: str = os.getenv("GOGS_URL", "http://localhost:3000")
  16. GOGS_TOKEN: str = os.getenv("GOGS_TOKEN", "")
  17. GOGS_SECRET: str = os.getenv("GOGS_SECRET", "") # Webhook secret
  18. # Storage
  19. STORAGE_ROOT: str = os.getenv("STORAGE_ROOT", "/data/storage")
  20. settings = Settings()