Files
update-server/app/core/config.py
T

35 lines
1.0 KiB
Python

from pathlib import Path
import os
from dotenv import load_dotenv
BASE_DIR = Path(__file__).resolve().parents[2]
ENV_FILE_PATH = Path(os.getenv("ENV_FILE_PATH", str(BASE_DIR / ".env"))).expanduser()
if not ENV_FILE_PATH.is_absolute():
ENV_FILE_PATH = BASE_DIR / ENV_FILE_PATH
load_dotenv(ENV_FILE_PATH)
def env_bool(name: str, default: bool = False) -> bool:
value = os.getenv(name)
return default if value is None else value.strip().lower() in {"1", "true", "yes", "on"}
def configured_path(name: str, default: str) -> Path:
path = Path(os.getenv(name, default)).expanduser()
return path if path.is_absolute() else BASE_DIR / path
class Settings:
"""Centralized settings facade used during the backend template migration."""
server_host = os.getenv("SERVER_HOST", "0.0.0.0")
server_port = int(os.getenv("SERVER_PORT", "8000"))
service_title = os.getenv("SERVICE_TITLE", "软件自动升级服务")
admin_token = os.getenv("ADMIN_TOKEN", "").strip()
settings = Settings()