I am trying to push/pull Helm Charts with the Helm 3 experimental feature implementing OCI protocol.
OSS Nexus Repository v3.21.1-01
Helm 3.1.1 on Windows 7
I am basically using the command “helm chart push”.
When activating the debug mode I can see that it uploads 2 blobs and 1 manifest.
The first blob containing the chart.yaml as a json content is uploaded with content-type=“application/vnd.cncf.helm.config.v1+json”
The second blob containing the chart package is uploaded with content-type=“application/tar+gzip”
The manifest is uploaded with content-type=“application/vnd.oci.image.manifest.v1+json”.
The push sequence doesn’t show any error, but when inspecting the content in the repository, all 3 have their content type changed:
- “application/vnd.cncf.helm.config.v1+json” changed to “application/vnd.docker.container.image.v1+json”
- “application/tar+gzip” changed to “application/vnd.docker.image.rootfs.diff.tar.gzip”
- “application/vnd.oci.image.manifest.v1+json” changed to “application/vnd.docker.distribution.manifest.v2+json”
The consequence is that I get an error form the Helm client when trying the command “helm chart pull”.
It fails on the first request to get the manifest with:
time=“2020-04-02T09:18:56+02:00” level=warning msg=“unknown type: application/vnd.docker.distribution.manifest.v2+json”
Error: blob sha256:71b284041c6e46d094369d9ac57c0b7dddb729e694c1870c16a13e8df1cf62cb expected at C:\Users\xberard\AppData\Local\Temp\helm\registry\cache\blobs\sha256\71b284041c6e46d094369d9ac57c0b7dddb729e694c1870c16a13e8df1cf62cb: not found
Is there a way to avoid this change of content-type?