diff --git a/build/pause/CHANGELOG.md b/build/pause/CHANGELOG.md new file mode 100644 index 0000000000..8f58bcdac0 --- /dev/null +++ b/build/pause/CHANGELOG.md @@ -0,0 +1,8 @@ +# 3.1 + +* The pause container gains a signal handler to clean up orphaned zombie processes. ([#36853](https://prs.k8s.io/36853), [@verb](https://github.com/verb)) +* `pause -v` will return build information for the pause binary. ([#56762](https://prs.k8s.io/56762), [@verb](https://github.com/verb)) + +# 3.0 + +* The pause container was rewritten entirely in C. ([#23009](https://prs.k8s.io/23009), [@uluyol](https://github.com/uluyol)) diff --git a/cmd/kubeadm/app/util/template_test.go b/cmd/kubeadm/app/util/template_test.go index 3a00e05e60..ed5fee9c33 100644 --- a/cmd/kubeadm/app/util/template_test.go +++ b/cmd/kubeadm/app/util/template_test.go @@ -21,9 +21,9 @@ import ( ) const ( - validTmpl = "image: {{ .ImageRepository }}/pause-{{ .Arch }}:3.0" - validTmplOut = "image: gcr.io/google_containers/pause-amd64:3.0" - doNothing = "image: gcr.io/google_containers/pause-amd64:3.0" + validTmpl = "image: {{ .ImageRepository }}/pause-{{ .Arch }}:3.1" + validTmplOut = "image: gcr.io/google_containers/pause-amd64:3.1" + doNothing = "image: gcr.io/google_containers/pause-amd64:3.1" invalidTmpl1 = "{{ .baz }/d}" invalidTmpl2 = "{{ !foobar }}" ) diff --git a/cmd/kubelet/app/options/container_runtime.go b/cmd/kubelet/app/options/container_runtime.go index d1174ea044..b57a4e20bc 100644 --- a/cmd/kubelet/app/options/container_runtime.go +++ b/cmd/kubelet/app/options/container_runtime.go @@ -26,9 +26,9 @@ import ( ) const ( - // When these values are updated, also update test/e2e/framework/util.go + // When these values are updated, also update test/utils/image/manifest.go defaultPodSandboxImageName = "gcr.io/google_containers/pause" - defaultPodSandboxImageVersion = "3.0" + defaultPodSandboxImageVersion = "3.1" // From pkg/kubelet/rkt/rkt.go to avoid circular import defaultRktAPIServiceEndpoint = "localhost:15441" ) diff --git a/hack/make-rules/test-cmd-util.sh b/hack/make-rules/test-cmd-util.sh index bce02c25fb..aaed098080 100755 --- a/hack/make-rules/test-cmd-util.sh +++ b/hack/make-rules/test-cmd-util.sh @@ -719,9 +719,9 @@ run_pod_tests() { kube::test::get_object_assert pods "{{range.items}}{{$image_field}}:{{end}}" 'changed-with-yaml:' ## Patch pod from JSON can change image # Command - kubectl patch "${kube_flags[@]}" -f test/fixtures/doc-yaml/admin/limitrange/valid-pod.yaml -p='{"spec":{"containers":[{"name": "kubernetes-serve-hostname", "image": "gcr.io/google_containers/pause-amd64:3.0"}]}}' - # Post-condition: valid-pod POD has image gcr.io/google_containers/pause-amd64:3.0 - kube::test::get_object_assert pods "{{range.items}}{{$image_field}}:{{end}}" 'gcr.io/google_containers/pause-amd64:3.0:' + kubectl patch "${kube_flags[@]}" -f test/fixtures/doc-yaml/admin/limitrange/valid-pod.yaml -p='{"spec":{"containers":[{"name": "kubernetes-serve-hostname", "image": "gcr.io/google_containers/pause-amd64:3.1"}]}}' + # Post-condition: valid-pod POD has image gcr.io/google_containers/pause-amd64:3.1 + kube::test::get_object_assert pods "{{range.items}}{{$image_field}}:{{end}}" 'gcr.io/google_containers/pause-amd64:3.1:' ## If resourceVersion is specified in the patch, it will be treated as a precondition, i.e., if the resourceVersion is different from that is stored in the server, the Patch should be rejected ERROR_FILE="${KUBE_TEMP}/conflict-error" diff --git a/hack/testdata/pod-with-precision.json b/hack/testdata/pod-with-precision.json index 5aac946cd2..ce59d9c100 100644 --- a/hack/testdata/pod-with-precision.json +++ b/hack/testdata/pod-with-precision.json @@ -9,7 +9,7 @@ "containers": [ { "name": "kubernetes-pause", - "image": "gcr.io/google_containers/pause-amd64:3.0" + "image": "gcr.io/google_containers/pause-amd64:3.1" } ], "restartPolicy": "Never", diff --git a/pkg/kubelet/dockershim/docker_sandbox.go b/pkg/kubelet/dockershim/docker_sandbox.go index b595e31009..be478d5e88 100644 --- a/pkg/kubelet/dockershim/docker_sandbox.go +++ b/pkg/kubelet/dockershim/docker_sandbox.go @@ -36,7 +36,7 @@ import ( ) const ( - defaultSandboxImage = "gcr.io/google_containers/pause-amd64:3.0" + defaultSandboxImage = "gcr.io/google_containers/pause-amd64:3.1" // Various default sandbox resources requests/limits. defaultSandboxCPUshares int64 = 2 diff --git a/test/integration/benchmark-controller.json b/test/integration/benchmark-controller.json index 00444f8900..47ac4ae0cd 100644 --- a/test/integration/benchmark-controller.json +++ b/test/integration/benchmark-controller.json @@ -17,7 +17,7 @@ "spec": { "containers": [{ "name": "test-container", - "image": "gcr.io/google_containers/pause-amd64:3.0" + "image": "gcr.io/google_containers/pause-amd64:3.1" }] } } diff --git a/test/integration/framework/util.go b/test/integration/framework/util.go index 88f4ac5249..afb1d68961 100644 --- a/test/integration/framework/util.go +++ b/test/integration/framework/util.go @@ -38,10 +38,10 @@ import ( ) const ( - // When these values are updated, also update cmd/kubelet/app/options/options.go - // A copy of these values exist in e2e/framework/util.go. + // When these values are updated, also update cmd/kubelet/app/options/container_runtime.go + // A copy of these values exist in test/utils/image/manifest.go currentPodInfraContainerImageName = "gcr.io/google_containers/pause" - currentPodInfraContainerImageVersion = "3.0" + currentPodInfraContainerImageVersion = "3.1" ) // GetServerArchitecture fetches the architecture of the cluster's apiserver. diff --git a/test/utils/image/manifest.go b/test/utils/image/manifest.go index 73b586ff61..f4bdb5f784 100644 --- a/test/utils/image/manifest.go +++ b/test/utils/image/manifest.go @@ -82,8 +82,8 @@ var ( NoSnatTest = ImageConfig{e2eRegistry, "no-snat-test", "1.0", true} NoSnatTestProxy = ImageConfig{e2eRegistry, "no-snat-test-proxy", "1.0", true} NWayHTTP = ImageConfig{e2eRegistry, "n-way-http", "1.0", true} - // When these values are updated, also update cmd/kubelet/app/options/options.go - Pause = ImageConfig{gcRegistry, "pause", "3.0", true} + // When these values are updated, also update cmd/kubelet/app/options/container_runtime.go + Pause = ImageConfig{gcRegistry, "pause", "3.1", true} Porter = ImageConfig{e2eRegistry, "porter", "1.0", true} PortForwardTester = ImageConfig{e2eRegistry, "port-forward-tester", "1.0", true} Redis = ImageConfig{e2eRegistry, "redis", "1.0", true}