31 lines
830 B
Python
31 lines
830 B
Python
from pydantic import BaseModel
|
|
from pydantic_settings import BaseSettings, SettingsConfigDict
|
|
|
|
from shared.config_helper import load_settings
|
|
from shared.datebase_base import DatabaseConfig
|
|
from shared.http_parser_base import HttpParserConfig
|
|
from shared.logger import LoggerConfig
|
|
from shared.telegram_base import TelegramConfig
|
|
from shared.worker_base import WorkerConfig
|
|
from src.adapter.jwt import JWTConfig
|
|
|
|
|
|
class AppConfig(BaseModel):
|
|
URL: str
|
|
|
|
|
|
class Settings(BaseSettings):
|
|
model_config = SettingsConfigDict(env_file='.env', case_sensitive=False, env_nested_delimiter='__')
|
|
|
|
app: AppConfig
|
|
db: DatabaseConfig
|
|
logger: LoggerConfig
|
|
telegram: TelegramConfig
|
|
telegram_parser: HttpParserConfig
|
|
jwt: JWTConfig
|
|
|
|
fetch_views_worker: WorkerConfig
|
|
|
|
|
|
settings: Settings = load_settings(Settings)
|