build: pin pg_repack builder base#1396
Conversation
Time Submission Status
Submit or update total time with: Add time on top of previous submission with: See available commands to help comply with our Guidelines. |
|
@holdex pr submit-time 4h |
|
Caution Review failedPull request was closed or merged during review No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe ChangesAlpine Version Pin in Dockerfile
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
resolves: https://github.com/truflation/website/issues/4070
What
Pin the
pg_repack_builderstage indeployments/Dockerfiletopostgres:16-alpine3.21instead of the floatingpostgres:16-alpinetag.Why
The floating
postgres:16-alpinetag has moved to Alpine 3.24, which dropped theclang19andllvm19packages this stage installs.apk add … clang19 … llvm19no longer resolves, so the build fails before producing the node image:The
clang19/llvm19line landed whenpostgres:16-alpinewas Alpine 3.21; the tag has since drifted. The build and runtime stages are already pinned (golang:1.25.3-alpine3.21,alpine:3.21) — only the pg_repack builder floated, which also meant pg_repack was compiled against a newer libc than thealpine:3.21runtime it is copied into.Pinning to
postgres:16-alpine3.21restoresclang19/llvm19and aligns the builder's Alpine (3.21.x) with the runtime stage so the copiedpg_repackbinary is ABI-consistent.Impact
Anything that builds
deployments/Dockerfileis currently affected:acceptance-test(auto-builds thetn-dbservice from this Dockerfile)ghcr.io/trufnetwork/node:latestcan be refreshed past v2.5.2mainin CIVerification
Built the
pg_repack_buildertarget against the pinned base:clang19/llvm19resolve and pg_repack 1.5.3 compiles and installs (docker build --target pg_repack_builder→ exit 0).Optional follow-up
Consider digest-pinning the runtime
alpine:3.21base and/or adding a Dependabot/Renovate rule for the base images, so a future Alpine 3.21 EOL surfaces as a PR rather than a silent CI break.Summary by CodeRabbit