release
This commit is contained in:
+23
-10
@@ -1,22 +1,35 @@
|
||||
# vector/app/main.py
|
||||
import os
|
||||
import sys
|
||||
import logging
|
||||
from contextlib import asynccontextmanager
|
||||
from datetime import datetime
|
||||
from typing import Optional
|
||||
|
||||
# 현재 디렉토리를 Python 경로에 추가
|
||||
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
||||
|
||||
# =============================================================================
|
||||
# .env 파일 로딩 (다른 import보다 먼저)
|
||||
# =============================================================================
|
||||
from dotenv import load_dotenv
|
||||
def is_kubernetes_env():
|
||||
"""Kubernetes 환경 감지"""
|
||||
return (
|
||||
os.path.exists('/var/run/secrets/kubernetes.io/serviceaccount') or
|
||||
os.getenv('KUBERNETES_SERVICE_HOST') or
|
||||
os.getenv('ENVIRONMENT') == 'production'
|
||||
)
|
||||
|
||||
# .env 파일에서 환경변수 로드
|
||||
load_dotenv()
|
||||
# 조건부 dotenv 로딩
|
||||
if not is_kubernetes_env():
|
||||
try:
|
||||
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
||||
|
||||
from dotenv import load_dotenv
|
||||
load_dotenv()
|
||||
print("✅ 로컬 개발환경: .env 파일 로딩")
|
||||
except ImportError:
|
||||
print("⚠️ python-dotenv 없음, 환경변수만 사용")
|
||||
else:
|
||||
print("ℹ️ Kubernetes/Production: ConfigMap/Secret 사용")
|
||||
|
||||
import logging
|
||||
from contextlib import asynccontextmanager
|
||||
from datetime import datetime
|
||||
from typing import Optional
|
||||
import asyncio
|
||||
import fastapi
|
||||
from fastapi import FastAPI, HTTPException, BackgroundTasks, Depends
|
||||
|
||||
Reference in New Issue
Block a user