Skip to content

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

Open
@ThomasVitale

Description

@ThomasVitale

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    carvel acceptedThis issue should be considered for future work and that the triage process has been completedenhancementThis issue is a feature request

    Type

    No type

    Projects

    • Status

      No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions