from pydantic_settings import BaseSettings, JsonConfigSettingsSource, SettingsConfigDict import os class Config(BaseSettings): terminals: dict mt5_folder: str mt5_exe: str model_config = SettingsConfigDict() @classmethod def settings_customise_sources( cls, settings_cls, init_settings, env_settings, dotenv_settings, file_secret_settings, ): # Получаем путь к файлу из переменной окружения config_file = os.getenv("MT5_MANAGER_CONFIG_FILE", "config.json") return ( init_settings, JsonConfigSettingsSource(settings_cls, json_file=config_file), env_settings, dotenv_settings, file_secret_settings, )