first commit
This commit is contained in:
26
app/settings.py
Normal file
26
app/settings.py
Normal file
@@ -0,0 +1,26 @@
|
||||
from functools import lru_cache
|
||||
|
||||
from pydantic import Field
|
||||
from pydantic_settings import BaseSettings, SettingsConfigDict
|
||||
|
||||
|
||||
class Settings(BaseSettings):
|
||||
model_config = SettingsConfigDict(env_file=".env", case_sensitive=False)
|
||||
|
||||
github_username: str = Field(alias="GITHUB_USERNAME")
|
||||
github_token: str | None = Field(default=None, alias="GITHUB_TOKEN")
|
||||
|
||||
gitea_base_url: str = Field(alias="GITEA_BASE_URL")
|
||||
gitea_username: str = Field(alias="GITEA_USERNAME")
|
||||
gitea_token: str | None = Field(default=None, alias="GITEA_TOKEN")
|
||||
|
||||
cache_ttl_seconds: int = Field(default=3600, alias="CACHE_TTL_SECONDS")
|
||||
cache_dir: str = Field(default="./cache", alias="CACHE_DIR")
|
||||
|
||||
default_theme: str = Field(default="light", alias="DEFAULT_THEME")
|
||||
service_title: str = Field(default="git-activity-merge", alias="SERVICE_TITLE")
|
||||
|
||||
|
||||
@lru_cache(maxsize=1)
|
||||
def get_settings() -> Settings:
|
||||
return Settings()
|
||||
Reference in New Issue
Block a user