From 68bd8d2584231fb59db7b4382eaa47f5b6d13981 Mon Sep 17 00:00:00 2001 From: zhengjiajin Date: Thu, 17 Aug 2017 11:19:14 +0800 Subject: [PATCH 1/2] fix issue(#50821)Add image check, if image not changed, transform false --- pkg/kubectl/cmd/set/set_image.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pkg/kubectl/cmd/set/set_image.go b/pkg/kubectl/cmd/set/set_image.go index a85d78e1b10..9f707df4898 100644 --- a/pkg/kubectl/cmd/set/set_image.go +++ b/pkg/kubectl/cmd/set/set_image.go @@ -196,9 +196,11 @@ func (o *ImageOptions) Run() error { continue } } - spec.Containers[i].Image = resolved - // Perform updates - transformed = true + if spec.Containers[i].Image != resolved { + spec.Containers[i].Image = resolved + // Perform updates + transformed = true + } } } // Add a new container if not found From a8c68d9211a3d6aa2e1b555c447f20a888036e73 Mon Sep 17 00:00:00 2001 From: zhengjiajin Date: Fri, 18 Aug 2017 09:39:07 +0800 Subject: [PATCH 2/2] add cmd test kubectl set image --- hack/make-rules/test-cmd-util.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/hack/make-rules/test-cmd-util.sh b/hack/make-rules/test-cmd-util.sh index a490624e16a..1c3d8267cab 100644 --- a/hack/make-rules/test-cmd-util.sh +++ b/hack/make-rules/test-cmd-util.sh @@ -2836,6 +2836,10 @@ run_deployment_tests() { kubectl set image deployment nginx-deployment "*"="${IMAGE_DEPLOYMENT_R1}" "${kube_flags[@]}" kube::test::get_object_assert deployment "{{range.items}}{{$deployment_image_field}}:{{end}}" "${IMAGE_DEPLOYMENT_R1}:" kube::test::get_object_assert deployment "{{range.items}}{{$deployment_second_image_field}}:{{end}}" "${IMAGE_DEPLOYMENT_R1}:" + # Set image of all containners of the deployment again when image not change + kubectl set image deployment nginx-deployment "*"="${IMAGE_DEPLOYMENT_R1}" "${kube_flags[@]}" + kube::test::get_object_assert deployment "{{range.items}}{{$deployment_image_field}}:{{end}}" "${IMAGE_DEPLOYMENT_R1}:" + kube::test::get_object_assert deployment "{{range.items}}{{$deployment_second_image_field}}:{{end}}" "${IMAGE_DEPLOYMENT_R1}:" # Clean up kubectl delete deployment nginx-deployment "${kube_flags[@]}"