use cosign v2.4.1+carbide.2 to address containerd annotation in index.json #390
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Please check below, if the PR fulfills these requirements:
Associated Links:
Types of Changes:
Proposed Changes:
In order to support Hauler hauls seeding RKE2 in an air-gapped installation, we needed to adjust an annotation in the image.json created by our cosign fork.
the annotation for default registry needs to be
docker.io
instead ofindex.docker.io
despite them being the same thing.Verification/Testing of Changes:
Doesn't work:
Works:
Additional Context:
Libraries like
github.com/google/go-containerregistry
default toindex.docker.io
when parsing an image reference. This behavior originates from historical conventions tied to Docker Hub's full domain name (index.docker.io
), which was explicitly used in the early days of Docker.Why
index.docker.io
ingo-containerregistry
?Docker Hub was initially identified as
index.docker.io
, and this full domain persisted in older tooling and libraries.While
docker.io
became the shorthand,index.docker.io
remained the "canonical" name in certain libraries and APIs.The
go-containerregistry
library adheres to a stricter parsing approach, considering the full domain name (index.docker.io
) rather than relying on the default aliasdocker.io
.This avoids ambiguities when working with other registries or configurations that might not alias
docker.io
correctly.The library prioritizes adherence to the OCI image spec, where fully qualified references are preferred.
Using
index.docker.io
ensures an explicit, unambiguous reference to the Docker Hub.Impact on
containerd
and Similar Tools:go-containerregistry
or similar libraries, the explicit reference toindex.docker.io
might cause issues with tools likecontainerd
that do not treatindex.docker.io
as a default alias fordocker.io
.