[V10.4-D] 環境變數修復:POSTGRES_PASSWORD 注入 + fail-fast 守衛
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:
ogt
2026-04-25 01:43:43 +08:00
parent 5ef4151fa5
commit dc6597d36b
3 changed files with 20 additions and 8 deletions

View File

@@ -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: