From 04c25fdd602eef8695d4420a44348548c8e975b6 Mon Sep 17 00:00:00 2001 From: OG T Date: Fri, 10 Apr 2026 16:04:42 +0800 Subject: [PATCH] =?UTF-8?q?fix(ci):=20B5=20schema=20init=20=E6=94=B9?= =?UTF-8?q?=E7=94=A8=20psql=20localhost:15432=20=E7=9B=B4=E9=80=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit act runner 無法透過 docker ps 取得 service container name 改用 psql client 直連 localhost:15432 初始化 schema Co-Authored-By: Claude Sonnet 4.6 --- .gitea/workflows/cd.yaml | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/.gitea/workflows/cd.yaml b/.gitea/workflows/cd.yaml index 50facd163..91427567b 100644 --- a/.gitea/workflows/cd.yaml +++ b/.gitea/workflows/cd.yaml @@ -140,13 +140,19 @@ jobs: # ── 整合測試 B5 (2026-04-10) ────────────────────────────────────────── # B5 整合測試 — postgres-test 由 services: 提供,localhost:15432 直連 + # 2026-04-10 Claude Sonnet 4.6: 用 psql 直連 localhost:15432 初始化 schema + # (docker exec 在 act runner 內無法取得 service container name) - name: Integration Tests (B5 — 真實 DB) run: | cd apps/api - # 初始化 schema (用 docker exec 進 service container) - PG_CTR=$(docker ps --filter name=postgres-test --format '{{.Names}}' | head -1) - docker exec -i "$PG_CTR" \ - psql -U awoooi -d awoooi_test < tests/integration/setup_test_schema.sql + # 安裝 psql client (runner 層級持久,首次才裝) + if ! command -v psql &>/dev/null; then + apt-get install -y -q postgresql-client + fi + # 初始化 schema — 直連 service container (localhost:15432) + PGPASSWORD=awoooi_test_2026 psql \ + -h localhost -p 15432 -U awoooi -d awoooi_test \ + -f tests/integration/setup_test_schema.sql # 跑測試 — service container 在同網路,localhost:15432 可連 TEST_DATABASE_URL="postgresql+asyncpg://awoooi:awoooi_test_2026@localhost:15432/awoooi_test?ssl=disable" \ /opt/api-venv/bin/pytest tests/integration/test_b5_core_flows.py -v --tb=short