🧹 chore: Remove postgres image build#197
Conversation
Signed-off-by: John McBride <john@papercompute.com>
|
| Filename | Overview |
|---|---|
| .dagger/postgres.go | Removed local Dockerfile build + push functions; PostgresService now pulls from pinned external ECR image. Image tag hardcoded here and again in local.go. |
| cmd/tapes/local/local.go | defaultPostgresImage updated to a pinned fully-qualified tag; duplicate of the constant in .dagger/postgres.go. |
| .github/workflows/nightly.yaml | Removed 'Push nightly postgres image' step cleanly. |
| .github/workflows/release.yaml | Removed 'Push postgres image' step cleanly. |
| docker-compose.yaml | Switched from local Dockerfile build to pulling pinned external ECR image; consistent with other changes. |
| makefile | Removed build-postgres-image and build-push-postgres-images targets; build-images dependency updated accordingly. |
| postgres/Dockerfile | Deleted — image build moved to separate versioned repository. |
| .dagger/image.go | Removed unused postgresImageName constant; tapesImageName retained. |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[Developer / CI] -->|nightly or release workflow| B[GitHub Actions]
B --> C[Build and Push Tapes Image]
B -->|previously also built postgres| D[Removed - no postgres build step]
E[tapes local up / docker compose up] --> F{Pull postgres image}
F --> G[External ECR Image - postgres 17.7-pgduckdb-1.1.1]
G -.->|replaced| H[Removed - local Dockerfile build]
I[Dagger PostgresService] --> G
I -.->|replaced| J[Removed - DockerBuild from postgres/Dockerfile]
Prompt To Fix All With AI
Fix the following 1 code review issue. Work through them one at a time, proposing concise fixes.
---
### Issue 1 of 1
cmd/tapes/local/local.go:22
**Postgres image version duplicated in two places**
The pinned image tag `17.7-pgduckdb-1.1.1` is defined independently in both `cmd/tapes/local/local.go` and `.dagger/postgres.go`. When the upstream image is bumped, both constants must be updated together — there is no single source of truth. A missed update would silently run a different Postgres version in Dagger integration tests than in the local CLI workflow.
Reviews (1): Last reviewed commit: "🧹 chore: Remove postgres image build" | Re-trigger Greptile
|
|
||
| const ( | ||
| defaultPostgresImage = "public.ecr.aws/g4e5l3z3/papercomputeco/postgres" | ||
| defaultPostgresImage = "public.ecr.aws/g4e5l3z3/papercomputeco/postgres:17.7-pgduckdb-1.1.1" |
There was a problem hiding this comment.
Postgres image version duplicated in two places
The pinned image tag 17.7-pgduckdb-1.1.1 is defined independently in both cmd/tapes/local/local.go and .dagger/postgres.go. When the upstream image is bumped, both constants must be updated together — there is no single source of truth. A missed update would silently run a different Postgres version in Dagger integration tests than in the local CLI workflow.
Prompt To Fix With AI
This is a comment left during a code review.
Path: cmd/tapes/local/local.go
Line: 22
Comment:
**Postgres image version duplicated in two places**
The pinned image tag `17.7-pgduckdb-1.1.1` is defined independently in both `cmd/tapes/local/local.go` and `.dagger/postgres.go`. When the upstream image is bumped, both constants must be updated together — there is no single source of truth. A missed update would silently run a different Postgres version in Dagger integration tests than in the local CLI workflow.
How can I resolve this? If you propose a fix, please make it concise.There was a problem hiding this comment.
This is fine. At some point we can make it dynamic how this is propagated through to dagger (a seperate Go module)
|
No docs update needed. This PR moves the postgres image build to a separate repository but doesn't change any user-facing configuration or behavior. Users connect to PostgreSQL using standard connection strings, which is already documented. The internal build/release infrastructure change is transparent to users. PR #197 was merged: 🧹 chore: Remove postgres image build |
This is a follow on to #189 - we now have the postgres builds in a separate repo that is versioned with
{postgres-version}-pgduckdb-{pgduckdb-version