carvel-dev / imgpkg

Store application configuration files in Docker/OCI registries
https://carvel.dev/imgpkg
Apache License 2.0
261 stars 61 forks source link

Consider using OCI compliant media-types #621

Open ChristianCiach opened 8 months ago

ChristianCiach commented 8 months ago

Describe the problem/challenge you have

I am trying to push Imgpkg artifacts to a Zot registry. Zot registry describes itself as a "vendor neutral" OCI registry. In practice this just means that Zot refuses to accept any image or artifact that uses a Docker (or any other non-OCI) specific mediaType.

For more information about this Zot's refusal to work with Docker artifacts, see this issue:

You can already see where I am going with this:

$ imgpkg push -i localhost:5000/test-bundle:v1.0.0 -f anyfile.txt --registry-insecure

imgpkg: Error: Writing 'localhost:5000/test-bundle:v1.0.0':
  Writing image:
    PUT http://localhost:5000/v2/test-bundle/manifests/v1.0.0:
      MANIFEST_INVALID: manifest invalid; map[description:During upload, manifests undergo several checks ensuring validity. If those checks fail, this error MAY be returned, unless a more specific error is included. The detail will contain information the failed validation. mediaType:application/vnd.docker.distribution.manifest.v2+json]

Describe the solution you'd like

Since it's probably unlikely for Zot to ever accept mediaTypes that are not defined by OCI, I would like imgpkg to (optionally) support the creation of bundles using standard OCI mediaTypes for its manifests and layers.


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.

rchincha commented 8 months ago

For more information about this Zot's refusal to work with Docker artifacts, see this issue:

Regardless of what the zot project does, I respectfully urge the carvel team to look at becoming OCI compliant. For reference, helm already is: https://helm.sh/docs/topics/registries/

praveenrewar commented 8 months ago

@ChristianCiach I believe you would be interested in this proposal.