From 0ac69a92c7a00a2a48d4a67a6c17f7eb2385c54c Mon Sep 17 00:00:00 2001 From: Stephen Adamson Date: Thu, 25 Jun 2026 01:08:28 +0100 Subject: [PATCH] fix(db): use POSTGRES_HOST env var in dev Connect() The dev-tagged Connect() in db_dev.go hardcoded localhost:5432 in the DSN instead of reading the POSTGRES_HOST env var. Since CI tests run with -tags "test,dev", db_dev.go is compiled and the POSTGRES_HOST=postgres env var was silently ignored, causing db package tests to try connecting to 127.0.0.1:5432 where no PostgreSQL is listening (service container is only reachable via Docker DNS hostname postgres). Also remove the -a flag from the workflow now that caching is no longer suspected of causing issues. --- .gitea/workflows/backend-tests.yaml | 2 +- backend/db/db_dev.go | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/backend-tests.yaml b/.gitea/workflows/backend-tests.yaml index e6925a5..43566fe 100644 --- a/.gitea/workflows/backend-tests.yaml +++ b/.gitea/workflows/backend-tests.yaml @@ -60,7 +60,7 @@ jobs: - name: Test (all packages) working-directory: backend - run: go test -a -tags "test,dev" -count=1 -v -timeout 120s ./handlers/... ./auth/... ./mw/... ./internal/... ./db/... + run: go test -tags "test,dev" -count=1 -v -timeout 120s ./handlers/... ./auth/... ./mw/... ./internal/... ./db/... env: POSTGRES_HOST: postgres PGUSER: myuser diff --git a/backend/db/db_dev.go b/backend/db/db_dev.go index ffca459..ab8ce6f 100644 --- a/backend/db/db_dev.go +++ b/backend/db/db_dev.go @@ -16,9 +16,10 @@ var Conn *PoolProxy func Connect() error { // Connect to Postgres inside Docker network dsn := fmt.Sprintf( - "postgres://%s:%s@localhost:5432/%s?sslmode=disable&require_auth=scram-sha-256", + "postgres://%s:%s@%s:5432/%s?sslmode=disable&require_auth=scram-sha-256", getEnv("POSTGRES_USER"), getEnv("POSTGRES_PASSWORD"), + getEnv("POSTGRES_HOST"), getEnv("POSTGRES_DB"), )