Improve release process to ensure we have stable & consistent format (mediaType)
What would you like to be added?
I checked several etcd released images, different images may have different mediaType. I think the reason could be different release persons have different docker versions. FYI. etcd has a release process, but release persons use their local env to build/release etcd.
In the long run, we should improve our release process to ensure we have stable & expected images. cc @ivanvc @joshjms
Not sure how Kubernetes release team generate the images?
3.6.0 application/vnd.docker.distribution.manifest.list.v2+json
3.6.1 application/vnd.docker.distribution.manifest.list.v2+json
3.6.2 application/vnd.oci.image.index.v1+json
3.6.3 application/vnd.oci.image.manifest.v1+json
3.6.4 application/vnd.docker.distribution.manifest.v2+json
3.6.5 application/vnd.docker.distribution.manifest.list.v2+json
3.6.6 application/vnd.oci.image.manifest.v1+json
3.5.22 application/vnd.oci.image.index.v1+json
3.5.23 application/vnd.docker.distribution.manifest.list.v2+json
3.5.24 application/vnd.docker.distribution.manifest.list.v2+json
3.5.25 application/vnd.oci.image.index.v1+json
Note it's breaking Kubeadm test case, refer to https://github.com/kubernetes/kubernetes/issues/135697
References:
- https://github.com/kubernetes/kubernetes/issues/121742
- https://docs.docker.com/build/exporters/#oci-media-types
Why is this needed?
.
Kubernetes uses Cloud Build to build images. Example: https://github.com/kubernetes-sigs/metrics-server/blob/master/cloudbuild.yaml
Short term mitigation could be to validate local docker version.
This should all be resolved by #20915
Kubernetes uses Cloud Build to build images.
This should all be resolved by #20915
thx both.
It seems that we need to resolve https://github.com/etcd-io/etcd/issues/20918 first to move #20915 forward. @ivanvc @joshjms
I am not sure it's builder issue. the application/vnd.oci.image.index.v1+json and application/vnd.docker.distribution.manifest.list.v2 are the same... they're using index or list to ship multiple platforms' manifest for content addressing.