Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consider the new Artifact support in OCI Spec v1.1 #547

Open
ThomasVitale opened this issue Jul 12, 2023 · 2 comments
Open

Consider the new Artifact support in OCI Spec v1.1 #547

ThomasVitale opened this issue Jul 12, 2023 · 2 comments
Labels
carvel accepted This issue should be considered for future work and that the triage process has been completed enhancement This issue is a feature request

Comments

@ThomasVitale
Copy link

ThomasVitale commented Jul 12, 2023

The upcoming OCI Image and Distribution Specs v1.1 will include changes that might be relevant for imgpkg. The goal is to standardise the way OCI is used to store arbitrary artifacts.

The OCI Image Spec 1.1 will introduce a new artifactType that can be used attached to a manifest to describe what artifact is included in the bundle instead of the current approach based on pushing artifacts with name <digest>.<suffix> (where <suffix> would be imgpkg, sig, att, sbom...).

The OCI Distribution Spec 1.1 will introduce support for querying artifacts based on a specific artifactType value and for establishing relationships among artifacts belonging to the same entity (so to handle together main artifact, signature, attestation, sbom... all together).

From what I see, imgpkg would be at least impacted in its functionality to transfer cosign signatures together with OCI images. It will also impact the implementation of #269. Also, there's an opportunity to use the new format and mark an OCI artifact as an imgpkg bundle using the new artifactType field rather than the .imgpkg suffix + custom labels on the manifest.

In the future, also vendir and kapp-controller might need to consider these changes when getting to work on carvel-dev/vendir#92 and carvel-dev/kapp-controller#1078.


Vote on this request

This is an invitation to the community to vote on issues, to help us prioritize our backlog. Use the "smiley face" up to the right of this comment to vote.

👍 "I would like to see this addressed as soon as possible"
👎 "There are other more important things to focus on right now"

We are also happy to receive and review Pull Requests if you want to help work on this issue.

@ThomasVitale ThomasVitale added carvel triage This issue has not yet been reviewed for validity enhancement This issue is a feature request labels Jul 12, 2023
@joaopapereira
Copy link
Member

Yes, this is something that we will need to support in the future, we need to wait for go-containerregistry to get up to date, and this will become more important as soon as cosign moves to artifacts itself. At that point, our current implementation of signature copy and retrieval is no longer valid.

Going to mark it as Carvel accepted, but we need to wait for go-containerregistry to adopt the new spec first

@joaopapereira joaopapereira added carvel accepted This issue should be considered for future work and that the triage process has been completed and removed carvel triage This issue has not yet been reviewed for validity labels Jul 13, 2023
@ThomasVitale
Copy link
Author

ThomasVitale commented Jul 14, 2023

The go-containerregistry project is currently asking for feedback about the OCI 1.1 changes in google/go-containerregistry#1750.

We also need to wait for container registries to start adopting the new spec. So far, I only know about Zot and Azure Container Registry which already provide support for it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
carvel accepted This issue should be considered for future work and that the triage process has been completed enhancement This issue is a feature request
Projects
Status: No status
Development

No branches or pull requests

2 participants