forked from antekov/mt5-manager
29 lines
810 B
Python
29 lines
810 B
Python
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,
|
|
)
|