Skip to content

fix: pin container images to a minor line or an exact version - #114

Merged
arthware-dev merged 1 commit into
mainfrom
fix/pin-image-tags
Sep 22, 2026
Merged

arthware-dev merged 1 commit into
mainfrom
fix/pin-image-tags

Conversation

@arthware-dev

Copy link
Copy Markdown
Contributor

Summary

  • Pin every stacklet image to its minor line where upstream publishes one (Open WebUI 0.11, Watchtower 1.16, Forgejo 14.0, Paperless 3.0, Gotenberg 8.37, Valkey 8.1-alpine, Caddy 2.10). Immich follows its v3 major line. Images with no minor tags get their exact version (Synapse v1.161.0, Element v1.12.28, Tika 4.0.0), and openedai-speech gets a digest. PostgreSQL stays on 16-alpine.
  • The pin test now rejects any tag that is not a version, including one set through [env.defaults], which is how main and release got past it.
  • stack-reference.md states the rule; the admin guide says new minor versions arrive with a famstack release.

Seven images followed a floating tag (`latest`, `main`, `release` or
none), so Watchtower's nightly pull could move a service to a new minor
or major version, or to an Open WebUI development build, without a
release deciding it. That is how Paperless went from 2.x to 3.0.

Each image now names the minor line where upstream publishes one, so
Watchtower still delivers patch releases, and the exact version where
it does not:

- Minor line: Open WebUI `0.11`, Watchtower `1.16`, Forgejo `14.0`,
  Paperless `3.0`, Gotenberg `8.37`, Valkey `8.1-alpine`, Caddy `2.10`
- Major line: Immich `v3`, which keeps to semantic versioning and tags
  no minor line
- Exact version: Synapse `v1.161.0`, Element `v1.12.28`, Tika `4.0.0`
- Digest: openedai-speech, which has tagged no release since 0.18.2
- Unchanged: PostgreSQL `16-alpine`, whose minor releases are its
  patch releases; the Immich database image and AdGuard, already exact

The pin test now rejects every tag that is not a version, including
one set through a stacklet's `[env.defaults]`. It only rejected
`latest` before, which let `main` and `release` through.
@arthware-dev
arthware-dev merged commit 641ead6 into main Sep 22, 2026
1 check passed
@arthware-dev
arthware-dev deleted the fix/pin-image-tags branch September 22, 2026 20:13
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.

1 participant