diff --git a/build/dependencies.yaml b/build/dependencies.yaml index 04b287d3084..0360180199b 100644 --- a/build/dependencies.yaml +++ b/build/dependencies.yaml @@ -157,7 +157,7 @@ dependencies: - path: build/pause/Makefile match: TAG\s*\?= - - name: "k8s.gcr.io/pause: dependents" + - name: "registry.k8s.io/pause: dependents" version: 3.6 refPaths: - path: cmd/kubeadm/app/constants/constants.go @@ -168,6 +168,10 @@ dependencies: match: validTmplOut\s+= - path: cmd/kubeadm/app/util/template_test.go match: doNothing\s+= + + - name: "k8s.gcr.io/pause: dependents" + version: 3.6 + refPaths: - path: cmd/kubelet/app/options/container_runtime.go match: defaultPodSandboxImageVersion\s+= - path: hack/testdata/pod-with-precision.json diff --git a/cmd/kubeadm/app/apis/kubeadm/types.go b/cmd/kubeadm/app/apis/kubeadm/types.go index be8f3df6ca1..da34eb327ac 100644 --- a/cmd/kubeadm/app/apis/kubeadm/types.go +++ b/cmd/kubeadm/app/apis/kubeadm/types.go @@ -122,8 +122,8 @@ type ClusterConfiguration struct { CertificatesDir string // ImageRepository sets the container registry to pull images from. - // If empty, `k8s.gcr.io` will be used by default; in case of kubernetes version is a CI build (kubernetes version starts with `ci/`) - // `gcr.io/k8s-staging-ci-images` will be used as a default for control plane components and for kube-proxy, while `k8s.gcr.io` + // If empty, `registry.k8s.io` will be used by default; in case of kubernetes version is a CI build (kubernetes version starts with `ci/`) + // `gcr.io/k8s-staging-ci-images` will be used as a default for control plane components and for kube-proxy, while `registry.k8s.io` // will be used for all the other images. ImageRepository string diff --git a/cmd/kubeadm/app/apis/kubeadm/v1beta2/defaults.go b/cmd/kubeadm/app/apis/kubeadm/v1beta2/defaults.go index 06bf93761fc..318c69d8190 100644 --- a/cmd/kubeadm/app/apis/kubeadm/v1beta2/defaults.go +++ b/cmd/kubeadm/app/apis/kubeadm/v1beta2/defaults.go @@ -40,7 +40,8 @@ const ( // DefaultCertificatesDir defines default certificate directory DefaultCertificatesDir = "/etc/kubernetes/pki" // DefaultImageRepository defines default image registry - DefaultImageRepository = "k8s.gcr.io" + // (previously this defaulted to k8s.gcr.io) + DefaultImageRepository = "registry.k8s.io" // DefaultManifestsDir defines default manifests directory DefaultManifestsDir = "/etc/kubernetes/manifests" // DefaultClusterName defines the default cluster name diff --git a/cmd/kubeadm/app/apis/kubeadm/v1beta2/doc.go b/cmd/kubeadm/app/apis/kubeadm/v1beta2/doc.go index 4d86d91dbbb..e2e4509c079 100644 --- a/cmd/kubeadm/app/apis/kubeadm/v1beta2/doc.go +++ b/cmd/kubeadm/app/apis/kubeadm/v1beta2/doc.go @@ -186,7 +186,7 @@ limitations under the License. // etcd: // # one of local or external // local: -// imageRepository: "k8s.gcr.io" +// imageRepository: "registry.k8s.io" // imageTag: "3.2.24" // dataDir: "/var/lib/etcd" // extraArgs: @@ -240,7 +240,7 @@ limitations under the License. // readOnly: false // pathType: File // certificatesDir: "/etc/kubernetes/pki" -// imageRepository: "k8s.gcr.io" +// imageRepository: "registry.k8s.io" // useHyperKubeImage: false // clusterName: "example-cluster" // --- diff --git a/cmd/kubeadm/app/apis/kubeadm/v1beta2/types.go b/cmd/kubeadm/app/apis/kubeadm/v1beta2/types.go index 61484b76277..ee6d5f0734a 100644 --- a/cmd/kubeadm/app/apis/kubeadm/v1beta2/types.go +++ b/cmd/kubeadm/app/apis/kubeadm/v1beta2/types.go @@ -96,8 +96,8 @@ type ClusterConfiguration struct { CertificatesDir string `json:"certificatesDir,omitempty"` // ImageRepository sets the container registry to pull images from. - // If empty, `k8s.gcr.io` will be used by default; in case of kubernetes version is a CI build (kubernetes version starts with `ci/`) - // `gcr.io/k8s-staging-ci-images` will be used as a default for control plane components and for kube-proxy, while `k8s.gcr.io` + // If empty, `registry.k8s.io` will be used by default; in case of kubernetes version is a CI build (kubernetes version starts with `ci/`) + // `gcr.io/k8s-staging-ci-images` will be used as a default for control plane components and for kube-proxy, while `registry.k8s.io` // will be used for all the other images. ImageRepository string `json:"imageRepository,omitempty"` diff --git a/cmd/kubeadm/app/apis/kubeadm/v1beta3/defaults.go b/cmd/kubeadm/app/apis/kubeadm/v1beta3/defaults.go index 193686b0981..77ff4aca6b0 100644 --- a/cmd/kubeadm/app/apis/kubeadm/v1beta3/defaults.go +++ b/cmd/kubeadm/app/apis/kubeadm/v1beta3/defaults.go @@ -42,7 +42,8 @@ const ( // DefaultCertificatesDir defines default certificate directory DefaultCertificatesDir = "/etc/kubernetes/pki" // DefaultImageRepository defines default image registry - DefaultImageRepository = "k8s.gcr.io" + // (previously this defaulted to k8s.gcr.io) + DefaultImageRepository = "registry.k8s.io" // DefaultManifestsDir defines default manifests directory DefaultManifestsDir = "/etc/kubernetes/manifests" // DefaultClusterName defines the default cluster name diff --git a/cmd/kubeadm/app/apis/kubeadm/v1beta3/doc.go b/cmd/kubeadm/app/apis/kubeadm/v1beta3/doc.go index 7234f2e4cca..1484cd0c2bd 100644 --- a/cmd/kubeadm/app/apis/kubeadm/v1beta3/doc.go +++ b/cmd/kubeadm/app/apis/kubeadm/v1beta3/doc.go @@ -195,7 +195,7 @@ limitations under the License. // etcd: // # one of local or external // local: -// imageRepository: "k8s.gcr.io" +// imageRepository: "registry.k8s.io" // imageTag: "3.2.24" // dataDir: "/var/lib/etcd" // extraArgs: @@ -249,7 +249,7 @@ limitations under the License. // readOnly: false // pathType: File // certificatesDir: "/etc/kubernetes/pki" -// imageRepository: "k8s.gcr.io" +// imageRepository: "registry.k8s.io" // clusterName: "example-cluster" // --- // apiVersion: kubelet.config.k8s.io/v1beta1 diff --git a/cmd/kubeadm/app/apis/kubeadm/v1beta3/types.go b/cmd/kubeadm/app/apis/kubeadm/v1beta3/types.go index 765ec8c740e..5f5e7b2d9f1 100644 --- a/cmd/kubeadm/app/apis/kubeadm/v1beta3/types.go +++ b/cmd/kubeadm/app/apis/kubeadm/v1beta3/types.go @@ -122,8 +122,8 @@ type ClusterConfiguration struct { CertificatesDir string `json:"certificatesDir,omitempty"` // ImageRepository sets the container registry to pull images from. - // If empty, `k8s.gcr.io` will be used by default; in case of kubernetes version is a CI build (kubernetes version starts with `ci/`) - // `gcr.io/k8s-staging-ci-images` will be used as a default for control plane components and for kube-proxy, while `k8s.gcr.io` + // If empty, `registry.k8s.io` will be used by default; in case of kubernetes version is a CI build (kubernetes version starts with `ci/`) + // `gcr.io/k8s-staging-ci-images` will be used as a default for control plane components and for kube-proxy, while `registry.k8s.io` // will be used for all the other images. // +optional ImageRepository string `json:"imageRepository,omitempty"` diff --git a/cmd/kubeadm/app/cmd/config_test.go b/cmd/kubeadm/app/cmd/config_test.go index d7d88878ccd..3c19f01b203 100644 --- a/cmd/kubeadm/app/cmd/config_test.go +++ b/cmd/kubeadm/app/cmd/config_test.go @@ -236,13 +236,13 @@ func TestConfigImagesListOutput(t *testing.T) { KubernetesVersion: dummyKubernetesVersionStr, }, outputFormat: "text", - expectedOutput: `k8s.gcr.io/kube-apiserver:{{.KubeVersion}} -k8s.gcr.io/kube-controller-manager:{{.KubeVersion}} -k8s.gcr.io/kube-scheduler:{{.KubeVersion}} -k8s.gcr.io/kube-proxy:{{.KubeVersion}} -k8s.gcr.io/pause:{{.PauseVersion}} -k8s.gcr.io/etcd:{{.EtcdVersion}} -k8s.gcr.io/coredns/coredns:{{.CoreDNSVersion}} + expectedOutput: `registry.k8s.io/kube-apiserver:{{.KubeVersion}} +registry.k8s.io/kube-controller-manager:{{.KubeVersion}} +registry.k8s.io/kube-scheduler:{{.KubeVersion}} +registry.k8s.io/kube-proxy:{{.KubeVersion}} +registry.k8s.io/pause:{{.PauseVersion}} +registry.k8s.io/etcd:{{.EtcdVersion}} +registry.k8s.io/coredns/coredns:{{.CoreDNSVersion}} `, }, { @@ -255,13 +255,13 @@ k8s.gcr.io/coredns/coredns:{{.CoreDNSVersion}} "kind": "Images", "apiVersion": "output.kubeadm.k8s.io/v1alpha2", "images": [ - "k8s.gcr.io/kube-apiserver:{{.KubeVersion}}", - "k8s.gcr.io/kube-controller-manager:{{.KubeVersion}}", - "k8s.gcr.io/kube-scheduler:{{.KubeVersion}}", - "k8s.gcr.io/kube-proxy:{{.KubeVersion}}", - "k8s.gcr.io/pause:{{.PauseVersion}}", - "k8s.gcr.io/etcd:{{.EtcdVersion}}", - "k8s.gcr.io/coredns/coredns:{{.CoreDNSVersion}}" + "registry.k8s.io/kube-apiserver:{{.KubeVersion}}", + "registry.k8s.io/kube-controller-manager:{{.KubeVersion}}", + "registry.k8s.io/kube-scheduler:{{.KubeVersion}}", + "registry.k8s.io/kube-proxy:{{.KubeVersion}}", + "registry.k8s.io/pause:{{.PauseVersion}}", + "registry.k8s.io/etcd:{{.EtcdVersion}}", + "registry.k8s.io/coredns/coredns:{{.CoreDNSVersion}}" ] } `, @@ -274,13 +274,13 @@ k8s.gcr.io/coredns/coredns:{{.CoreDNSVersion}} outputFormat: "yaml", expectedOutput: `apiVersion: output.kubeadm.k8s.io/v1alpha2 images: -- k8s.gcr.io/kube-apiserver:{{.KubeVersion}} -- k8s.gcr.io/kube-controller-manager:{{.KubeVersion}} -- k8s.gcr.io/kube-scheduler:{{.KubeVersion}} -- k8s.gcr.io/kube-proxy:{{.KubeVersion}} -- k8s.gcr.io/pause:{{.PauseVersion}} -- k8s.gcr.io/etcd:{{.EtcdVersion}} -- k8s.gcr.io/coredns/coredns:{{.CoreDNSVersion}} +- registry.k8s.io/kube-apiserver:{{.KubeVersion}} +- registry.k8s.io/kube-controller-manager:{{.KubeVersion}} +- registry.k8s.io/kube-scheduler:{{.KubeVersion}} +- registry.k8s.io/kube-proxy:{{.KubeVersion}} +- registry.k8s.io/pause:{{.PauseVersion}} +- registry.k8s.io/etcd:{{.EtcdVersion}} +- registry.k8s.io/coredns/coredns:{{.CoreDNSVersion}} kind: Images `, }, @@ -290,13 +290,13 @@ kind: Images KubernetesVersion: dummyKubernetesVersionStr, }, outputFormat: `go-template={{range .images}}{{.}}{{"\n"}}{{end}}`, - expectedOutput: `k8s.gcr.io/kube-apiserver:{{.KubeVersion}} -k8s.gcr.io/kube-controller-manager:{{.KubeVersion}} -k8s.gcr.io/kube-scheduler:{{.KubeVersion}} -k8s.gcr.io/kube-proxy:{{.KubeVersion}} -k8s.gcr.io/pause:{{.PauseVersion}} -k8s.gcr.io/etcd:{{.EtcdVersion}} -k8s.gcr.io/coredns/coredns:{{.CoreDNSVersion}} + expectedOutput: `registry.k8s.io/kube-apiserver:{{.KubeVersion}} +registry.k8s.io/kube-controller-manager:{{.KubeVersion}} +registry.k8s.io/kube-scheduler:{{.KubeVersion}} +registry.k8s.io/kube-proxy:{{.KubeVersion}} +registry.k8s.io/pause:{{.PauseVersion}} +registry.k8s.io/etcd:{{.EtcdVersion}} +registry.k8s.io/coredns/coredns:{{.CoreDNSVersion}} `, }, { @@ -305,8 +305,8 @@ k8s.gcr.io/coredns/coredns:{{.CoreDNSVersion}} KubernetesVersion: dummyKubernetesVersionStr, }, outputFormat: `jsonpath={range.images[*]}{@} {end}`, - expectedOutput: "k8s.gcr.io/kube-apiserver:{{.KubeVersion}} k8s.gcr.io/kube-controller-manager:{{.KubeVersion}} k8s.gcr.io/kube-scheduler:{{.KubeVersion}} " + - "k8s.gcr.io/kube-proxy:{{.KubeVersion}} k8s.gcr.io/pause:{{.PauseVersion}} k8s.gcr.io/etcd:{{.EtcdVersion}} k8s.gcr.io/coredns/coredns:{{.CoreDNSVersion}} ", + expectedOutput: "registry.k8s.io/kube-apiserver:{{.KubeVersion}} registry.k8s.io/kube-controller-manager:{{.KubeVersion}} registry.k8s.io/kube-scheduler:{{.KubeVersion}} " + + "registry.k8s.io/kube-proxy:{{.KubeVersion}} registry.k8s.io/pause:{{.PauseVersion}} registry.k8s.io/etcd:{{.EtcdVersion}} registry.k8s.io/coredns/coredns:{{.CoreDNSVersion}} ", }, } diff --git a/cmd/kubeadm/app/componentconfigs/fakeconfig_test.go b/cmd/kubeadm/app/componentconfigs/fakeconfig_test.go index 18e78d54f59..f4183955ea4 100644 --- a/cmd/kubeadm/app/componentconfigs/fakeconfig_test.go +++ b/cmd/kubeadm/app/componentconfigs/fakeconfig_test.go @@ -218,7 +218,7 @@ var ( etcd: local: dataDir: /var/lib/etcd - imageRepository: k8s.gcr.io + imageRepository: registry.k8s.io kind: ClusterConfiguration kubernetesVersion: 1.2.3 networking: @@ -234,7 +234,7 @@ var ( ClusterName: "LeCluster", KubernetesVersion: "1.2.3", CertificatesDir: "/etc/kubernetes/pki", - ImageRepository: "k8s.gcr.io", + ImageRepository: "registry.k8s.io", Networking: kubeadmapiv1.Networking{ DNSDomain: "cluster.local", ServiceSubnet: "10.96.0.0/12", diff --git a/cmd/kubeadm/app/images/images.go b/cmd/kubeadm/app/images/images.go index ee55eb6c995..4c2982d9f6d 100644 --- a/cmd/kubeadm/app/images/images.go +++ b/cmd/kubeadm/app/images/images.go @@ -48,7 +48,7 @@ func GetDNSImage(cfg *kubeadmapi.ClusterConfiguration) string { if cfg.DNS.ImageRepository != "" { dnsImageRepository = cfg.DNS.ImageRepository } - // Handle the renaming of the official image from "k8s.gcr.io/coredns" to "k8s.gcr.io/coredns/coredns + // Handle the renaming of the official image from "registry.k8s.io/coredns" to "registry.k8s.io/coredns/coredns if dnsImageRepository == kubeadmapiv1beta2.DefaultImageRepository { dnsImageRepository = fmt.Sprintf("%s/coredns", dnsImageRepository) } diff --git a/cmd/kubeadm/app/images/images_test.go b/cmd/kubeadm/app/images/images_test.go index 2b8affce236..816a03e9d76 100644 --- a/cmd/kubeadm/app/images/images_test.go +++ b/cmd/kubeadm/app/images/images_test.go @@ -29,7 +29,7 @@ import ( const ( testversion = "v10.1.2-alpha.1.100+0123456789abcdef+SOMETHING" expected = "v10.1.2-alpha.1.100_0123456789abcdef_SOMETHING" - gcrPrefix = "k8s.gcr.io" + gcrPrefix = "registry.k8s.io" ) func TestGetGenericImage(t *testing.T) { diff --git a/cmd/kubeadm/app/phases/kubelet/flags_test.go b/cmd/kubeadm/app/phases/kubelet/flags_test.go index 06a21b73357..aa68c4a0958 100644 --- a/cmd/kubeadm/app/phases/kubelet/flags_test.go +++ b/cmd/kubeadm/app/phases/kubelet/flags_test.go @@ -120,11 +120,11 @@ func TestBuildKubeletArgMap(t *testing.T) { nodeRegOpts: &kubeadmapi.NodeRegistrationOptions{ CRISocket: "/var/run/dockershim.sock", }, - pauseImage: "k8s.gcr.io/pause:3.6", + pauseImage: "registry.k8s.io/pause:3.6", }, expected: map[string]string{ "network-plugin": "cni", - "pod-infra-container-image": "k8s.gcr.io/pause:3.6", + "pod-infra-container-image": "registry.k8s.io/pause:3.6", }, }, } diff --git a/cmd/kubeadm/app/phases/upgrade/compute_test.go b/cmd/kubeadm/app/phases/upgrade/compute_test.go index b5792c7bb6d..0ff6c707be7 100644 --- a/cmd/kubeadm/app/phases/upgrade/compute_test.go +++ b/cmd/kubeadm/app/phases/upgrade/compute_test.go @@ -83,7 +83,7 @@ metadata: spec: containers: - name: etcd - image: k8s.gcr.io/etcd:` + fakeCurrentEtcdVersion + image: registry.k8s.io/etcd:` + fakeCurrentEtcdVersion func getEtcdVersion(v *versionutil.Version) string { etcdVer, _, _ := constants.EtcdSupportedVersion(constants.SupportedEtcdVersion, v.String()) diff --git a/cmd/kubeadm/app/phases/upgrade/staticpods_test.go b/cmd/kubeadm/app/phases/upgrade/staticpods_test.go index 21fe5553a55..ce73e59f535 100644 --- a/cmd/kubeadm/app/phases/upgrade/staticpods_test.go +++ b/cmd/kubeadm/app/phases/upgrade/staticpods_test.go @@ -81,7 +81,7 @@ etcd: local: dataDir: %%s image: "" -imageRepository: k8s.gcr.io +imageRepository: registry.k8s.io kubernetesVersion: %%s networking: dnsDomain: cluster.local @@ -998,7 +998,7 @@ metadata: spec: containers: - name: etcd - image: k8s.gcr.io/etcd:` + expectedEtcdVersion + image: registry.k8s.io/etcd:` + expectedEtcdVersion manifestsDir, err := ioutil.TempDir("", "GetEtcdImageTagFromStaticPod-test-manifests") if err != nil { diff --git a/cmd/kubeadm/app/util/template_test.go b/cmd/kubeadm/app/util/template_test.go index ebdb1c14699..fc10805cf60 100644 --- a/cmd/kubeadm/app/util/template_test.go +++ b/cmd/kubeadm/app/util/template_test.go @@ -22,8 +22,8 @@ import ( const ( validTmpl = "image: {{ .ImageRepository }}/pause:3.6" - validTmplOut = "image: k8s.gcr.io/pause:3.6" - doNothing = "image: k8s.gcr.io/pause:3.6" + validTmplOut = "image: registry.k8s.io/pause:3.6" + doNothing = "image: registry.k8s.io/pause:3.6" invalidTmpl1 = "{{ .baz }/d}" invalidTmpl2 = "{{ !foobar }}" ) @@ -40,7 +40,7 @@ func TestParseTemplate(t *testing.T) { name: "should parse a valid template and set the right values", template: validTmpl, data: struct{ ImageRepository, Arch string }{ - ImageRepository: "k8s.gcr.io", + ImageRepository: "registry.k8s.io", Arch: "amd64", }, output: validTmplOut, @@ -50,7 +50,7 @@ func TestParseTemplate(t *testing.T) { name: "should noop if there aren't any {{ .foo }} present", template: doNothing, data: struct{ ImageRepository, Arch string }{ - ImageRepository: "k8s.gcr.io", + ImageRepository: "registry.k8s.io", Arch: "amd64", }, output: doNothing,