[V10.4-D] 環境變數修復:POSTGRES_PASSWORD 注入 + fail-fast 守衛
Some checks failed
CD Pipeline / deploy (push) Failing after 1m6s
Some checks failed
CD Pipeline / deploy (push) Failing after 1m6s
修復 H7(排程器/Telegram Bot 容器中 POSTGRES_PASSWORD 為空):
- docker-compose.yml: 移除 scheduler/telegram-bot 的 \${POSTGRES_*} environment
插值行,僅保留 env_file: .env(與 188 主機已上線版本同步)
- config.py: USE_POSTGRESQL=true 時,POSTGRES_PASSWORD 空值立即 raise ValueError,
避免無聲連線失敗(原本只在執行期出現 auth error)
- .env.example: 新增 GEMINI_API_KEY / GEMINI_MODEL / OPENCLAW_MODEL,
附 Gemini 2.0 Flash EOL 2026-06-01 警告
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -113,6 +113,14 @@ ELEPHANT_ALPHA_HERMES_MODEL=hermes3:latest
|
||||
ELEPHANT_ALPHA_NEMOTRON_NIM_ENDPOINT=https://integrate.api.nvidia.com/v1
|
||||
ELEPHANT_ALPHA_OPENCLAW_GEMINI_ENDPOINT=https://generativelanguage.googleapis.com/v1beta
|
||||
|
||||
# ── Google Gemini API ───────────────────────────────────────────────────────
|
||||
# OpenClaw 策略師 / MCP Collector / Code Review Pipeline 共用金鑰
|
||||
# 取得方式:https://aistudio.google.com/app/apikey
|
||||
# 注意:Gemini 2.0 Flash 將於 2026-06-01 關閉,後續需遷移至 2.5 Flash
|
||||
GEMINI_API_KEY=<change-me>
|
||||
GEMINI_MODEL=gemini-1.5-flash
|
||||
OPENCLAW_MODEL=gemini-2.5-flash-preview-05-20
|
||||
|
||||
# Debug and Monitoring
|
||||
ELEPHANT_ALPHA_DEBUG_MODE=false
|
||||
ELEPHANT_ALPHA_METRICS_ENABLED=true
|
||||
|
||||
10
config.py
10
config.py
@@ -30,6 +30,16 @@ if USE_POSTGRESQL:
|
||||
POSTGRES_PASSWORD = os.getenv('POSTGRES_PASSWORD')
|
||||
POSTGRES_DB = os.getenv('POSTGRES_DB', 'momo_analytics')
|
||||
|
||||
# 檢查密碼是否設置
|
||||
if not POSTGRES_PASSWORD:
|
||||
raise ValueError(
|
||||
f"❌ 資料庫密碼未設置!請檢查:\n"
|
||||
f"1. .env 檔案中是否設置了 POSTGRES_PASSWORD\n"
|
||||
f"2. Docker Compose 環境變數是否正確傳遞\n"
|
||||
f"3. 容器重啟後環境變數是否生效\n"
|
||||
f"當前環境變數:USE_POSTGRESQL=true, POSTGRES_HOST={POSTGRES_HOST}, POSTGRES_USER={POSTGRES_USER}"
|
||||
)
|
||||
|
||||
DATABASE_PATH = f"postgresql://{POSTGRES_USER}:{POSTGRES_PASSWORD}@{POSTGRES_HOST}:{POSTGRES_PORT}/{POSTGRES_DB}"
|
||||
DATABASE_TYPE = 'postgresql'
|
||||
else:
|
||||
|
||||
@@ -226,12 +226,9 @@ services:
|
||||
- PYTHONUNBUFFERED=1
|
||||
- TZ=Asia/Taipei
|
||||
# 資料庫設定: Docker 環境使用 PostgreSQL
|
||||
# H7 (2026-04-24): POSTGRES_* 改由 env_file: .env 唯一來源,移除 compose 層插值避免空值覆蓋
|
||||
- USE_POSTGRESQL=true
|
||||
- POSTGRES_HOST=${POSTGRES_HOST:-postgres}
|
||||
- POSTGRES_PORT=5432
|
||||
- POSTGRES_USER=${POSTGRES_USER:-momo}
|
||||
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
||||
- POSTGRES_DB=${POSTGRES_DB:-momo_analytics}
|
||||
# Embedding 服務:bge-m3 on Hermes (ADR-003),永遠走內網免 auth
|
||||
- EMBEDDING_HOST=${EMBEDDING_HOST:-http://192.168.0.111:11434}
|
||||
env_file:
|
||||
@@ -274,12 +271,9 @@ services:
|
||||
- FLASK_ENV=production
|
||||
- PYTHONUNBUFFERED=1
|
||||
- TZ=Asia/Taipei
|
||||
# H7 (2026-04-24): POSTGRES_* 改由 env_file: .env 唯一來源,移除 compose 層插值避免空值覆蓋
|
||||
- USE_POSTGRESQL=true
|
||||
- POSTGRES_HOST=${POSTGRES_HOST:-postgres}
|
||||
- POSTGRES_PORT=5432
|
||||
- POSTGRES_USER=${POSTGRES_USER:-momo}
|
||||
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
||||
- POSTGRES_DB=${POSTGRES_DB:-momo_analytics}
|
||||
- EMBEDDING_HOST=${EMBEDDING_HOST:-http://192.168.0.111:11434}
|
||||
env_file:
|
||||
- .env
|
||||
|
||||
Reference in New Issue
Block a user