/
ArchOracle
/
trading
Обзор
Документация
Войти
/
ArchOracle
/
trading
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/app/bootstrap/settings.py
45 строк
1 KB
ArchOracle
Добавил url песочницы в настройки.
04 май 2026, 21:42
04 май 2026, 21:42
346ddd1
Код
Авторство
О чём код?
from dataclasses import dataclass import os from dotenv import load_dotenv @dataclass(frozen=True) class TinkoffSettings: base_url: str base_url_sandbox: str trading_token: str sandbox_token: str _instance: "TinkoffSettings | None" = None # техническое поле класса @staticmethod def load() -> "TinkoffSettings": if TinkoffSettings._instance is not None: return TinkoffSettings._instance load_dotenv() base_url = os.getenv("T_BASE_URL") base_url_sandbox = os.getenv("T_BASE_URL_SANDBOX") trading_token = os.getenv("T_TOKEN_TRADING_READONLY") sandbox_token = os.getenv("T_TOKEN_SANDBOX") missing = [] if not base_url: missing.append("T_BASE_URL") if not trading_token: missing.append("T_TOKEN_TRADING_READONLY") if not sandbox_token: missing.append("T_TOKEN_SANDBOX") if missing: raise RuntimeError(f"Missing env vars: {', '.join(missing)}") TinkoffSettings._instance = TinkoffSettings( base_url=base_url, trading_token=trading_token, sandbox_token=sandbox_token, base_url_sandbox=base_url_sandbox, ) return TinkoffSettings._instance