-
Notifications
You must be signed in to change notification settings - Fork 3
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
Project defines invalid OCI content #17
Comments
@saschagrunert Hey, what do you think about supporting |
@sudo-bmitch According to @saschagrunert reply => kubernetes/enhancements#4639 (comment) CRI-O can support custom media types. I will put the definition of artifact types directly into media types, without considering the media types that are compatible with image volume when the container runtime pulls the image volume. I think it can be a correct |
That's a bit rough worded for my taste considering that we're going back and forth with the KEP. 🙃
That's what the runtimes can currently do, but we can clearly built on top if that. |
I avoided the term disinformation, because I don't think there's any malicious intent from the authors. I've just seen too many end users that have been mislead, and feel really bad for all the end users that reasonably assume that OCI Artifacts are currently supported. Those users have also been coming to OCI, e.g. we recently had a request to change the spec with a new layer media type so that their artifact content would be considered an OCI image that would then be required for runtimes to support. The sooner we can merge corrections to the KEP and blog posts, the fewer people will be mislead, so I'd like to do what it takes to expedite that. |
From the current spec:
There is a misunderstanding here because of misinformation being spread from KEP-4639. There's an attempt to clear this up at kubernetes/enhancements#4897 (comment) but that hasn't been merged yet and someone should submit a PR to fix the blog post misinformation too.
The TL;DR of the KEP is they do not support OCI Artifacts, only OCI Images. To be an OCI Image, the config media type MUST be set to
application/vnd.oci.image.config.v1+json
. And from the OCI Artifact guidance, the media type MUST NOT use that value (since it is specific to OCI Images):The two goals of the project are currently incompatible with each other, and the result is an invalid definition that OCI conformant registries and other tooling have no obligation to support. If the project wants to have content mounted as a volume source in Kubernetes according to KEP-4639, then there is no new specification needed, the content is a simple OCI image with the model packaged inside a tar filesystem. If the project wants to define an OCI Artifact, then the config media type must be changed and you have the choice to define your own
artifactType
and layer media types.Note that there is a desire from the KEP authors to support OCI Artifacts in the future, which will likely require a new KEP that specifies how filesystem attributes normally provided by tar would be defined.
The text was updated successfully, but these errors were encountered: