Skip to content

feat(registry): warn anyone choosing an end-of-life template - #38

Merged
ericwang401 merged 2 commits into
mainfrom
feat/recipe-notice
Sep 29, 2026
Merged

ericwang401 merged 2 commits into
mainfrom
feat/recipe-notice

Conversation

@ericwang401

Copy link
Copy Markdown
Contributor

Problem

Debian 11 is past LTS and security.debian.org no longer serves its binaries, but the registry lists it as plain "Debian 11 (Bullseye)". Nothing tells a Convoy user, a coport user, or someone logging in to a clone that the guest will never get another security update.

Change

  • Recipe # notice: header, published as the template's registry description.
  • Publish takes display and the notice from the recipe, not the sidecar, so relabelling reaches the registry on the next publish without rebuilding the image. A sidecar with no matching recipe is left as built.
  • coport warns with the notice as soon as a template is chosen, before VMIDs are confirmed. This applies in the picker and under --all, --select and --upgrade.
  • debian-11 is shown as "Debian 11 (Bullseye, EOL)", carries a notice, and appends an end-of-life warning to /etc/motd at build time.

Output (coport dry run on a PVE node)

◇  Select templates to install
│  Debian 11 (Bullseye, EOL)
⚠ Debian 11 (Bullseye, EOL): End of life: Debian publishes no more security updates for bullseye. Use Debian 12 or 13 for anything reachable from a network.
│
◇  VMID assignments ─────────────────────────────────╮

Testing

  • New withRecipeMetadata and # notice parsing tests pass; bun run typecheck and coport's tsc are clean.
  • Ran a local publish from the real debian-11/12/13 sidecars: only debian-11 changes (EOL display and description).
  • Ran the coport picker and a --select dry run on a PVE 9.1 node.

Debian 11 is past LTS and security.debian.org no longer serves its binaries,
yet the registry listed it as plain "Debian 11 (Bullseye)". Nothing told a
Convoy user, a coport user, or someone logging in to a clone that the guest
will never receive another security update.

A recipe can now carry `# notice:`, published as the template's
`description`. Publish takes `display` and the notice from the recipe rather
than the sidecar, so relabelling reaches the registry on the next publish
instead of waiting for a rebuild of an image that may never be rebuilt.

coport warns with the notice as soon as a template is chosen, before VMIDs
are confirmed, in the picker and under --all, --select and --upgrade alike.

debian-11 is marked EOL in its display name, the one field every consumer
shows, carries a notice, and appends a warning to /etc/motd at build time.
@ericwang401
ericwang401 merged commit 1a08dc1 into main Sep 29, 2026
2 checks passed
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