mirror of
https://github.com/k3s-io/kubernetes.git
synced 2026-01-05 15:37:24 +00:00
Merge pull request #70395 from seans3/expose-bug-fix
kubectl: fixes expose bug for workload without selectors
This commit is contained in:
@@ -1094,6 +1094,34 @@ run_rc_tests() {
|
||||
# Clean-up
|
||||
kubectl delete deployment/nginx-deployment "${kube_flags[@]}"
|
||||
|
||||
### Expose deployments by creating a service
|
||||
# Uses deployment selectors for created service
|
||||
output_message=$(kubectl expose -f test/fixtures/pkg/kubectl/cmd/expose/appsv1deployment.yaml --port 80 2>&1 "${kube_flags[@]}")
|
||||
# Post-condition: service created for deployment.
|
||||
kube::test::if_has_string "${output_message}" 'service/expose-test-deployment exposed'
|
||||
# Clean-up
|
||||
kubectl delete service/expose-test-deployment "${kube_flags[@]}"
|
||||
# Uses deployment selectors for created service
|
||||
output_message=$(kubectl expose -f test/fixtures/pkg/kubectl/cmd/expose/appsv1beta2deployment.yaml --port 80 2>&1 "${kube_flags[@]}")
|
||||
# Post-condition: service created for deployment.
|
||||
kube::test::if_has_string "${output_message}" 'service/expose-test-deployment exposed'
|
||||
# Clean-up
|
||||
kubectl delete service/expose-test-deployment "${kube_flags[@]}"
|
||||
# Uses deployment selectors for created service
|
||||
output_message=$(kubectl expose -f test/fixtures/pkg/kubectl/cmd/expose/appsv1beta1deployment.yaml --port 80 2>&1 "${kube_flags[@]}")
|
||||
# Post-condition: service created for deployment.
|
||||
kube::test::if_has_string "${output_message}" 'service/expose-test-deployment exposed'
|
||||
# Clean-up
|
||||
kubectl delete service/expose-test-deployment "${kube_flags[@]}"
|
||||
# Contains no selectors, should fail.
|
||||
output_message=$(! kubectl expose -f test/fixtures/pkg/kubectl/cmd/expose/appsv1deployment-no-selectors.yaml --port 80 2>&1 "${kube_flags[@]}")
|
||||
# Post-condition: service created for deployment.
|
||||
kube::test::if_has_string "${output_message}" 'invalid deployment: no selectors'
|
||||
# Contains no selectors, should fail.
|
||||
output_message=$(! kubectl expose -f test/fixtures/pkg/kubectl/cmd/expose/appsv1beta2deployment-no-selectors.yaml --port 80 2>&1 "${kube_flags[@]}")
|
||||
# Post-condition: service created for deployment.
|
||||
kube::test::if_has_string "${output_message}" 'invalid deployment: no selectors'
|
||||
|
||||
### Expose a deployment as a service
|
||||
kubectl create -f test/fixtures/doc-yaml/user-guide/deployment.yaml "${kube_flags[@]}"
|
||||
# Pre-condition: 3 replicas
|
||||
|
||||
18
test/fixtures/pkg/kubectl/cmd/expose/appsv1beta1deployment-no-selectors.yaml
vendored
Normal file
18
test/fixtures/pkg/kubectl/cmd/expose/appsv1beta1deployment-no-selectors.yaml
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
apiVersion: apps/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: expose-test-deployment
|
||||
labels:
|
||||
name: expose-test-deployment
|
||||
spec:
|
||||
replicas: 3
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
name: nginx
|
||||
spec:
|
||||
containers:
|
||||
- name: nginx
|
||||
image: nginx
|
||||
ports:
|
||||
- containerPort: 80
|
||||
21
test/fixtures/pkg/kubectl/cmd/expose/appsv1beta1deployment.yaml
vendored
Normal file
21
test/fixtures/pkg/kubectl/cmd/expose/appsv1beta1deployment.yaml
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
apiVersion: apps/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: expose-test-deployment
|
||||
labels:
|
||||
name: expose-test-deployment
|
||||
spec:
|
||||
replicas: 3
|
||||
selector:
|
||||
matchLabels:
|
||||
name: nginx
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
name: nginx
|
||||
spec:
|
||||
containers:
|
||||
- name: nginx
|
||||
image: nginx
|
||||
ports:
|
||||
- containerPort: 80
|
||||
18
test/fixtures/pkg/kubectl/cmd/expose/appsv1beta2deployment-no-selectors.yaml
vendored
Normal file
18
test/fixtures/pkg/kubectl/cmd/expose/appsv1beta2deployment-no-selectors.yaml
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
apiVersion: apps/v1beta2
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: expose-test-deployment
|
||||
labels:
|
||||
name: expose-test-deployment
|
||||
spec:
|
||||
replicas: 3
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
name: nginx
|
||||
spec:
|
||||
containers:
|
||||
- name: nginx
|
||||
image: nginx
|
||||
ports:
|
||||
- containerPort: 80
|
||||
21
test/fixtures/pkg/kubectl/cmd/expose/appsv1beta2deployment.yaml
vendored
Normal file
21
test/fixtures/pkg/kubectl/cmd/expose/appsv1beta2deployment.yaml
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
apiVersion: apps/v1beta2
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: expose-test-deployment
|
||||
labels:
|
||||
name: expose-test-deployment
|
||||
spec:
|
||||
replicas: 3
|
||||
selector:
|
||||
matchLabels:
|
||||
name: nginx
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
name: nginx
|
||||
spec:
|
||||
containers:
|
||||
- name: nginx
|
||||
image: nginx
|
||||
ports:
|
||||
- containerPort: 80
|
||||
18
test/fixtures/pkg/kubectl/cmd/expose/appsv1deployment-no-selectors.yaml
vendored
Normal file
18
test/fixtures/pkg/kubectl/cmd/expose/appsv1deployment-no-selectors.yaml
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: expose-test-deployment
|
||||
labels:
|
||||
name: expose-test-deployment
|
||||
spec:
|
||||
replicas: 3
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
name: nginx
|
||||
spec:
|
||||
containers:
|
||||
- name: nginx
|
||||
image: nginx
|
||||
ports:
|
||||
- containerPort: 80
|
||||
21
test/fixtures/pkg/kubectl/cmd/expose/appsv1deployment.yaml
vendored
Normal file
21
test/fixtures/pkg/kubectl/cmd/expose/appsv1deployment.yaml
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: expose-test-deployment
|
||||
labels:
|
||||
name: expose-test-deployment
|
||||
spec:
|
||||
replicas: 3
|
||||
selector:
|
||||
matchLabels:
|
||||
name: nginx
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
name: nginx
|
||||
spec:
|
||||
containers:
|
||||
- name: nginx
|
||||
image: nginx
|
||||
ports:
|
||||
- containerPort: 80
|
||||
Reference in New Issue
Block a user