From 485b8cb003e83f439fc3d85d93027edc0b51b30f Mon Sep 17 00:00:00 2001 From: OG T Date: Fri, 10 Apr 2026 11:40:40 +0800 Subject: [PATCH] =?UTF-8?q?fix(ci):=20B5=20=E6=95=B4=E5=90=88=E6=B8=AC?= =?UTF-8?q?=E8=A9=A6=E5=8A=A0=20ssl=3Ddisable=20=E2=80=94=20asyncpg=20?= =?UTF-8?q?=E9=A0=90=E8=A8=AD=E5=98=97=E8=A9=A6=20SSL=20=E8=A2=AB=20contai?= =?UTF-8?q?ner=20=E6=8B=92=E7=B5=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 錯誤: ConnectionRefusedError Connect call failed ('127.0.0.1', 15432) 根因: asyncpg 走 _create_ssl_connection,臨時 postgres container 無 SSL 修正: TEST_DATABASE_URL + conftest 預設 URL 均加 ?ssl=disable Co-Authored-By: Claude Sonnet 4.6 --- .gitea/workflows/cd.yaml | 2 +- apps/api/tests/integration/conftest.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/cd.yaml b/.gitea/workflows/cd.yaml index 57fa5932..72515907 100644 --- a/.gitea/workflows/cd.yaml +++ b/.gitea/workflows/cd.yaml @@ -133,7 +133,7 @@ jobs: docker compose -f docker-compose.test.yml exec -T postgres-test \ psql -U awoooi -d awoooi_test \ -f /dev/stdin < tests/integration/setup_test_schema.sql - TEST_DATABASE_URL="postgresql+asyncpg://awoooi:awoooi_test_2026@127.0.0.1:15432/awoooi_test" \ + TEST_DATABASE_URL="postgresql+asyncpg://awoooi:awoooi_test_2026@127.0.0.1:15432/awoooi_test?ssl=disable" \ /opt/api-venv/bin/pytest tests/integration/test_b5_core_flows.py -v --tb=short TEST_EXIT=$? docker compose -f docker-compose.test.yml down -v 2>/dev/null || true diff --git a/apps/api/tests/integration/conftest.py b/apps/api/tests/integration/conftest.py index 8149f8c0..d74b4357 100644 --- a/apps/api/tests/integration/conftest.py +++ b/apps/api/tests/integration/conftest.py @@ -23,7 +23,7 @@ from sqlalchemy.ext.asyncio import AsyncSession, async_sessionmaker, create_asyn DEV_DB_URL = os.environ.get( "TEST_DATABASE_URL", - "postgresql+asyncpg://awoooi:awoooi_prod_2026@192.168.0.188:5432/awoooi_dev", + "postgresql+asyncpg://awoooi:awoooi_prod_2026@192.168.0.188:5432/awoooi_dev?ssl=disable", ) # 確保不會誤打 prod