fix(#55): e2e postgres service on PGPORT 5433 to avoid host port collision #62

Merged
Mark merged 1 commit from fix/nodedesk-55-e2e-port-5433 into main 2026-08-14 16:04:45 +00:00
Owner

What

Move the e2e postgres service to PGPORT 5433 and point DATABASE_URL at localhost:5433, per the root-cause analysis (kanban t_2966c6ac, nodedesk#55).

Why

The Forgejo runner runs job containers with container.network: host, so the e2e postgres service binds DIRECTLY on the runner host. Host port 5432 is already owned by devforge_db_1, so the previous config (5432:5432 + DATABASE_URL localhost:5432) hit the wrong server and prisma db push died with P1000 (run #5664, commit 9805e36).

Changes

  • .forgejo/workflows/e2e.yml: service env PGPORT 5433, ports 5433:5432, health-cmd pg_isready -p 5433, DATABASE_URL localhost:5433/test, accurate comment block.

Verification

  • Local repro with CI-equivalent config: prisma db push OK, seed OK, Playwright 28 passed / 1 skipped with --grep-invert @quarantine (12.5s).
  • Pre-push hook (npm test): 28 passed (13.1s).
  • Branch CI: ci.yml jobs will run on this PR; e2e.yml only triggers on push to main (unchanged, P1-4 tracks pull_request trigger restore).

Closes nodedesk#55 once merged and the main-branch e2e run is green.

## What Move the e2e postgres service to PGPORT 5433 and point DATABASE_URL at localhost:5433, per the root-cause analysis (kanban t_2966c6ac, nodedesk#55). ## Why The Forgejo runner runs job containers with container.network: host, so the e2e postgres service binds DIRECTLY on the runner host. Host port 5432 is already owned by devforge_db_1, so the previous config (5432:5432 + DATABASE_URL localhost:5432) hit the wrong server and prisma db push died with P1000 (run #5664, commit 9805e36). ## Changes - .forgejo/workflows/e2e.yml: service env PGPORT 5433, ports 5433:5432, health-cmd pg_isready -p 5433, DATABASE_URL localhost:5433/test, accurate comment block. ## Verification - Local repro with CI-equivalent config: prisma db push OK, seed OK, Playwright 28 passed / 1 skipped with --grep-invert @quarantine (12.5s). - Pre-push hook (npm test): 28 passed (13.1s). - Branch CI: ci.yml jobs will run on this PR; e2e.yml only triggers on push to main (unchanged, P1-4 tracks pull_request trigger restore). Closes nodedesk#55 once merged and the main-branch e2e run is green.
fix(#55): e2e postgres service on PGPORT 5433 to avoid host port collision
All checks were successful
CI / Lint (pull_request) Successful in 52s
CI / Type check (pull_request) Successful in 53s
CI / Unit tests (Node 20) (pull_request) Successful in 51s
CI / Unit tests (Node 22) (pull_request) Successful in 1m58s
CI / Integration (pull_request) Successful in 51s
CI / Coverage (pull_request) Successful in 57s
CI / Build (pull_request) Successful in 3m59s
7d834eae05
The runner runs job containers with container.network=host, so the e2e
postgres service binds DIRECTLY on the runner host. Host port 5432 is
already owned by devforge_db_1, so the previous config (5432:5432 +
DATABASE_URL localhost:5432) hit the wrong server and 'prisma db push'
died with P1000 (run #5664, commit 9805e36).

Move the service to PGPORT 5433 (free on the runner host), update the
port mapping and health-cmd to match, and point DATABASE_URL at
localhost:5433. Verified locally: prisma db push OK, seed OK, Playwright
28 passed / 1 skipped with --grep-invert @quarantine.

Docs: docs/ci/audit.md §3.8
Mark merged commit ec727608ff into main 2026-08-14 16:04:45 +00:00
Sign in to join this conversation.
No description provided.