Skip to content

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

Merged
jmarrero merged 2 commits into
bootc-dev:mainfrom
cgwalters-forge:bot/pin-ubi9-podman
Oct 31, 2026
Merged

jmarrero merged 2 commits into
bootc-dev:mainfrom
cgwalters-forge:bot/pin-ubi9-podman

Conversation

@cgwalters-bot

Copy link
Copy Markdown
Contributor

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 digest everywhere the bound image is referenced. The storage check in test-logically-bound-install.nu matched repository:tag, which a digest reference lacks, so it now uses podman image exists per reference. 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>
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>
@jmarrero
jmarrero merged commit 709dfe5 into bootc-dev:main Oct 31, 2026
54 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.

3 participants