- hydra/main.py: auth_guard 미들웨어에 실제 API 키 검증 로직 추가 - hydra/main.py: lifespan 초기화 블록 try-except 감싸기, finally에서 ohlcv_store None 체크 추가 - Dockerfile: --host 127.0.0.1 → 0.0.0.0 (컨테이너 간 통신 가능하도록) - hydra/config/settings.py: 기본 API 키 사용 시 경고 validator 추가 - README.md: 첫 사용자를 위한 상세 가이드로 전면 재작성 - docs/QUICKSTART_KO.md: 단계별 시작 가이드 개선 - docs/API_REFERENCE_KO.md: 전체 엔드포인트 응답 예시 및 파라미터 설명 추가 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
33 lines
949 B
Python
33 lines
949 B
Python
import warnings
|
|
from functools import lru_cache
|
|
from pydantic import field_validator
|
|
from pydantic_settings import BaseSettings
|
|
|
|
|
|
class Settings(BaseSettings):
|
|
hydra_api_key: str = "change-me"
|
|
hydra_profile: str = "lite"
|
|
redis_url: str = "redis://localhost:6379"
|
|
db_url: str = "sqlite:///data/hydra.db"
|
|
telegram_bot_token: str = ""
|
|
telegram_chat_id: str = ""
|
|
log_level: str = "INFO"
|
|
|
|
model_config = {"env_file": ".env", "env_file_encoding": "utf-8"}
|
|
|
|
@field_validator("hydra_api_key")
|
|
@classmethod
|
|
def api_key_must_not_be_default(cls, v: str) -> str:
|
|
if v == "change-me":
|
|
warnings.warn(
|
|
"[HYDRA] HYDRA_API_KEY가 기본값 'change-me'로 설정되어 있습니다. "
|
|
".env 파일에서 안전한 값으로 변경하세요.",
|
|
stacklevel=2,
|
|
)
|
|
return v
|
|
|
|
|
|
@lru_cache
|
|
def get_settings() -> Settings:
|
|
return Settings()
|