mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-23 19:56:01 +00:00
Merge pull request #54202 from shiywang/force_apply
Automatic merge from submit-queue (batch tested with PRs 54446, 54202). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. add apply --force --overwrite deployment lables e2e test enhance some tests e2e cases enhance, releated to previous bug https://github.com/openshift/origin/issues/15017 here. and fixed here https://github.com/kubernetes/kubernetes/pull/48481 /sig-cli ```release-note NONE ```
This commit is contained in:
commit
09d896bfd0
@ -1142,6 +1142,24 @@ run_kubectl_apply_deployments_tests() {
|
|||||||
kube::test::wait_object_assert replicasets "{{range.items}}{{$id_field}}:{{end}}" ''
|
kube::test::wait_object_assert replicasets "{{range.items}}{{$id_field}}:{{end}}" ''
|
||||||
kube::test::get_object_assert pods "{{range.items}}{{$id_field}}:{{end}}" ''
|
kube::test::get_object_assert pods "{{range.items}}{{$id_field}}:{{end}}" ''
|
||||||
|
|
||||||
|
# kubectl apply deployment --overwrite=true --force=true
|
||||||
|
# Pre-Condition: no deployment exists
|
||||||
|
kube::test::get_object_assert deployments "{{range.items}}{{$id_field}}:{{end}}" ''
|
||||||
|
# apply deployment nginx
|
||||||
|
kubectl apply -f hack/testdata/deployment-label-change1.yaml "${kube_flags[@]}"
|
||||||
|
# check right deployment exists
|
||||||
|
kube::test::get_object_assert 'deployment nginx' "{{${id_field}}}" 'nginx'
|
||||||
|
# apply deployment with wrong labels mismatch selector throws errors
|
||||||
|
output_message=$(! kubectl apply -f hack/testdata/deployment-label-change2.yaml 2>&1 "${kube_flags[@]}")
|
||||||
|
kube::test::if_has_string "${output_message}" 'Invalid value'
|
||||||
|
# apply deployment with --force and --overwrite will success
|
||||||
|
kubectl apply -f hack/testdata/deployment-label-change2.yaml --overwrite=true --force=true --grace-period=10
|
||||||
|
# check the changed deployment
|
||||||
|
output_message=$(kubectl apply view-last-applied deploy/nginx -o json 2>&1 "${kube_flags[@]}" |grep nginx2)
|
||||||
|
kube::test::if_has_string "${output_message}" '"name": "nginx2"'
|
||||||
|
# cleanup
|
||||||
|
kubectl delete deployments --all --grace-period=10
|
||||||
|
|
||||||
set +o nounset
|
set +o nounset
|
||||||
set +o errexit
|
set +o errexit
|
||||||
}
|
}
|
||||||
|
18
hack/testdata/deployment-label-change1.yaml
vendored
Normal file
18
hack/testdata/deployment-label-change1.yaml
vendored
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
apiVersion: extensions/v1beta1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: nginx
|
||||||
|
labels:
|
||||||
|
name: nginx
|
||||||
|
spec:
|
||||||
|
replicas: 3
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
name: nginx1
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: nginx
|
||||||
|
image: gcr.io/google-containers/nginx:test-cmd
|
||||||
|
ports:
|
||||||
|
- containerPort: 80
|
18
hack/testdata/deployment-label-change2.yaml
vendored
Normal file
18
hack/testdata/deployment-label-change2.yaml
vendored
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
apiVersion: extensions/v1beta1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: nginx
|
||||||
|
labels:
|
||||||
|
name: nginx
|
||||||
|
spec:
|
||||||
|
replicas: 3
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
name: nginx2
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: nginx
|
||||||
|
image: gcr.io/google-containers/nginx:test-cmd
|
||||||
|
ports:
|
||||||
|
- containerPort: 80
|
Loading…
Reference in New Issue
Block a user