Skip to content

containers: config.image override for every container - #13

Merged
canercidam merged 1 commit into
mainfrom
feat/container-image-override
Sep 22, 2026
Merged

canercidam merged 1 commit into
mainfrom
feat/container-image-override

Conversation

@KA-ROM

@KA-ROM KA-ROM commented Sep 17, 2026

Copy link
Copy Markdown
Collaborator

Why

Every container hardcodes its image pin, and a recipe can only change it if that container's author added a special case (three did, each differently: op-reth, lighthouse-*, helix-simulator). Bumping a version, or matching a real deployment's version, meant editing container files.

What

One rule instead: any container accepts config: { image: "…" } from its recipe or an --opt.

  • utils/resolve.ts: buildContainerFor(def, ctx) builds through the prototype, then applies config.image if set.
  • renderers/{k8s,podman,docker-compose}.ts: all three build containers through it (the only path there is).
{ name: "beacon-1", prototype: "lighthouse-beacon",
  config: { image: "docker.io/sigp/lighthouse:v8.2.0" } }

Notes

@KA-ROM
KA-ROM force-pushed the feat/container-image-override branch from 9cb66e2 to c68b886 Compare September 17, 2026 09:51
@KA-ROM
KA-ROM added this pull request to stack #15 September 17, 2026 09:54
@canercidam
canercidam force-pushed the feat/container-image-override branch from c68b886 to 9027304 Compare September 22, 2026 10:26
Base automatically changed from feat/k8s-renderer to main September 22, 2026 10:34
Any container accepts config: { image } from its recipe or an --opt, applied in the one path all renderers build containers through. Prototype defaults stay where they are; version bumps no longer edit container files.
@canercidam
canercidam force-pushed the feat/container-image-override branch from 9027304 to 1a21f47 Compare September 22, 2026 10:34
@canercidam
canercidam merged commit 40724c2 into main Sep 22, 2026
2 checks passed
@KA-ROM
KA-ROM deleted the feat/container-image-override branch September 22, 2026 11:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants