Skip to content

tests: Pin ubi9/podman bound image to 9.8-1793032728 - #55

Closed
cgwalters-bot wants to merge 2 commits into
mainfrom
bot/pin-ubi9-podman
Closed

cgwalters-bot wants to merge 2 commits into
mainfrom
bot/pin-ubi9-podman

Conversation

@cgwalters-bot

@cgwalters-bot cgwalters-bot commented Oct 30, 2026 •

Copy link
Copy Markdown
Collaborator

test-upgrade (centos-10, ostree) has failed on every PR since about 2026-10-29 with:

Source image rejected: None of the signatures were accepted, reasons: missing dev.sigstore.cosign/bundle annotation; Signature for identity "registry.redhat.io/ubi9/podman:1793203970" is not accepted; ...

The new ubi9/podman build 9.8-1793203936 (sha256:eabafb0a…) is signed, but its sigstore attachments (sha256-eabafb0a….sig) only carry identities for registry.redhat.io/ubi9/podman:{latest,9.8,9.8-1793203936,1793203970} and registry.access.redhat.com/ubi9/podman:1793203970. The previous build 9.8-1793032728 (sha256:2cfaa836…) also had registry.access.redhat.com/ubi9/podman:{latest,9.8,9.8-1793032728}. CentOS Stream 10's /usr/share/containers/policy.json requires sigstoreSigned (Red Hat release3 key + Rekor) for registry.access.redhat.com with the default matchRepoDigestOrExact identity, so pulling :latest by tag on the upgraded guest is rejected. Fedora's policy and the composefs variants (which drop bound images) aren't affected.

Reproduced with skopeo and the stock CentOS 10 policy/keys: :latest is rejected; 9.8-1793032728 by tag and both builds by digest are accepted.

This pins the previous build by its 9.8-1793032728 tag everywhere the bound image is referenced. That tag has a registry.access.redhat.com signature for its exact identity, so the default policy accepts it. An earlier revision pinned the manifest-list digest, but the install path copies bound images out of host containers-storage with podman image push, and that fails with "Digest of source image's manifest would not match destination reference" because the host only stores the per-arch manifest. Revert once Red Hat republishes the missing registry.access.redhat.com tag signatures.

Generated-by: https://github.com/cgwalters/#llms

The ubi9/podman 9.8-1793203936 build that now backs :latest on
registry.access.redhat.com has no sigstore signature for that
registry's :latest (or :9.8) tag; it only carries
registry.redhat.io identities plus registry.access.redhat.com
:1793203970. CentOS Stream 10's default policy requires
sigstoreSigned for registry.access.redhat.com with the default
matchRepoDigestOrExact identity, so pulling it by tag on the
upgraded guest is rejected and the centos-10 ostree upgrade test
fails on every PR.

Pin the previous build by digest. The storage check in the
logically bound install test looked images up by repository:tag,
which a digest reference doesn't have, so look each one up directly.

Assisted-by: https://github.com/cgwalters/cgwalters#llms
Signed-off-by: Colin Walters <walters@verbum.org>
@cgwalters-bot

Copy link
Copy Markdown
Collaborator Author

Promoted on the operator's approval as bootc-dev#2606, at head 7892258, which adds the operator's Signed-off-by.

Generated-by: https://github.com/cgwalters/#llms

The digest pinned in the previous commit is the manifest list's, but
the install path copies bound images out of host containers-storage
with `podman image push`, and the host only holds the per-arch
manifest. containers-storage then refuses the copy with "Digest of
source image's manifest would not match destination reference".

The 9.8-1793032728 tag carries a registry.access.redhat.com
signature for that exact identity, so pulling it by tag satisfies the
default sigstoreSigned policy and needs no digest. That also lets the
logically bound install test go back to matching repository:tag.

Assisted-by: https://github.com/cgwalters/cgwalters#llms
Signed-off-by: Colin Walters <walters@verbum.org>
@cgwalters-bot

Copy link
Copy Markdown
Collaborator Author

Added the operator's Signed-off-by to ee5ee90d following the approval of that head; the tree is unchanged. The branch is now at 03b72b2f, which also updates bootc-dev#2606.

Generated-by: https://github.com/cgwalters/#llms

@cgwalters-bot cgwalters-bot added the needs-human The poll stopped here; a person decides what is next label Oct 31, 2026
@cgwalters-bot

Copy link
Copy Markdown
Collaborator Author

Holding this with needs-human so the pass does not act on it once it follows this repository (tracker's pr.headOwners change). The branch bot/pin-ubi9-podman is also the head of the upstream pull request bootc-dev#2606, so a fix or rebase round here would rewrite that one too. The label is the only per-pull-request hold the pass has; nothing about this change is otherwise in question.

Generated-by: https://github.com/cgwalters/#llms

@cgwalters-bot

Copy link
Copy Markdown
Collaborator Author

Closing: this branch merged upstream as bootc-dev#2606 on 31 Oct, so nothing is left to do here.

Generated-by: https://github.com/cgwalters/#llms

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-human The poll stopped here; a person decides what is next

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants