Skip to content

Commit

Permalink
Deprecate extensions/v1beta1 deployments
Browse files Browse the repository at this point in the history
  • Loading branch information
micw523 committed Jul 23, 2019
1 parent b519de1 commit 7b9ec5f
Show file tree
Hide file tree
Showing 8 changed files with 46 additions and 58 deletions.
2 changes: 1 addition & 1 deletion examples/create_deployment.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ def main():

with open(path.join(path.dirname(__file__), "nginx-deployment.yaml")) as f:
dep = yaml.safe_load(f)
k8s_beta = client.ExtensionsV1beta1Api()
k8s_beta = client.AppsV1Api()
resp = k8s_beta.create_namespaced_deployment(
body=dep, namespace="default")
print("Deployment created. status='%s'" % str(resp.status))
Expand Down
2 changes: 1 addition & 1 deletion examples/create_deployment_from_yaml.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ def main():
config.load_kube_config()
k8s_client = client.ApiClient()
utils.create_from_yaml(k8s_client, "nginx-deployment.yaml")
k8s_api = client.ExtensionsV1beta1Api(k8s_client)
k8s_api = client.AppsV1Api(k8s_client)
deps = k8s_api.read_namespaced_deployment("nginx-deployment", "default")
print("Deployment {0} created".format(deps.metadata.name))

Expand Down
10 changes: 7 additions & 3 deletions examples/nginx-deployment.yaml
Original file line number Diff line number Diff line change
@@ -1,17 +1,21 @@
apiVersion: extensions/v1beta1
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.7.9
image: nginx:1.15.4
ports:
- containerPort: 80

37 changes: 12 additions & 25 deletions kubernetes/e2e_test/test_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,21 +52,6 @@ def test_create_apps_deployment_from_yaml(self):
name="nginx-app", namespace="default",
body={})

def test_create_extensions_deployment_from_yaml(self):
"""
Should be able to create an extensions/v1beta1 deployment.
"""
k8s_client = client.api_client.ApiClient(configuration=self.config)
utils.create_from_yaml(
k8s_client, self.path_prefix + "extensions-deployment.yaml")
ext_api = client.ExtensionsV1beta1Api(k8s_client)
dep = ext_api.read_namespaced_deployment(name="nginx-deployment",
namespace="default")
self.assertIsNotNone(dep)
ext_api.delete_namespaced_deployment(
name="nginx-deployment", namespace="default",
body={})

def test_create_pod_from_yaml(self):
"""
Should be able to create a pod.
Expand Down Expand Up @@ -134,7 +119,7 @@ def test_create_deployment_non_default_namespace_from_yaml(self):
utils.create_from_yaml(
k8s_client, self.path_prefix + "dep-deployment.yaml")
core_api = client.CoreV1Api(k8s_client)
ext_api = client.ExtensionsV1beta1Api(k8s_client)
ext_api = client.AppsV1Api(k8s_client)
nmsp = core_api.read_namespace(name="dep")
self.assertIsNotNone(nmsp)
dep = ext_api.read_namespaced_deployment(name="nginx-deployment",
Expand Down Expand Up @@ -186,7 +171,7 @@ def test_create_general_list_from_yaml(self):
utils.create_from_yaml(
k8s_client, self.path_prefix + "list.yaml")
core_api = client.CoreV1Api(k8s_client)
ext_api = client.ExtensionsV1beta1Api(k8s_client)
ext_api = client.AppsV1Api(k8s_client)
svc = core_api.read_namespaced_service(name="list-service-test",
namespace="default")
self.assertIsNotNone(svc)
Expand Down Expand Up @@ -317,7 +302,7 @@ def test_create_from_multi_resource_yaml_with_conflict(self):

def test_create_from_multi_resource_yaml_with_multi_conflicts(self):
"""
Should create an extensions/v1beta1 deployment
Should create an apps/v1 deployment
and fail to create the same deployment twice.
Should raise an exception that contains two error messages.
"""
Expand All @@ -327,14 +312,14 @@ def test_create_from_multi_resource_yaml_with_multi_conflicts(self):
k8s_client, self.path_prefix + "triple-nginx.yaml")
exp_error = ('Error from server (Conflict): {"kind":"Status",'
'"apiVersion":"v1","metadata":{},"status":"Failure",'
'"message":"deployments.extensions \\"triple-nginx\\" '
'"message":"deployments.apps \\"triple-nginx\\" '
'already exists","reason":"AlreadyExists",'
'"details":{"name":"triple-nginx","group":"extensions",'
'"details":{"name":"triple-nginx","group":"apps",'
'"kind":"deployments"},"code":409}\n'
)
exp_error += exp_error
self.assertEqual(exp_error, str(cm.exception))
ext_api = client.ExtensionsV1beta1Api(k8s_client)
ext_api = client.AppsV1Api(k8s_client)
dep = ext_api.read_namespaced_deployment(name="triple-nginx",
namespace="default")
self.assertIsNotNone(dep)
Expand All @@ -348,7 +333,8 @@ def test_create_namespaces_apps_deployment_from_yaml(self):
"""
k8s_client = client.api_client.ApiClient(configuration=self.config)
utils.create_from_yaml(
k8s_client, self.path_prefix + "apps-deployment.yaml", namespace=self.test_namespace)
k8s_client, self.path_prefix + "apps-deployment.yaml",
namespace=self.test_namespace)
app_api = client.AppsV1beta1Api(k8s_client)
dep = app_api.read_namespaced_deployment(name="nginx-app",
namespace=self.test_namespace)
Expand All @@ -357,14 +343,15 @@ def test_create_namespaces_apps_deployment_from_yaml(self):
name="nginx-app", namespace=self.test_namespace,
body={})

def test_create_from_list_in_multi_resource_yaml(self):
def test_create_from_list_in_multi_resource_yaml_namespaced(self):
"""
Should be able to create the items in the PodList and a deployment
specified in the multi-resource file
specified in the multi-resource file in a test namespace
"""
k8s_client = client.api_client.ApiClient(configuration=self.config)
utils.create_from_yaml(
k8s_client, self.path_prefix + "multi-resource-with-list.yaml", namespace=self.test_namespace)
k8s_client, self.path_prefix + "multi-resource-with-list.yaml",
namespace=self.test_namespace)
core_api = client.CoreV1Api(k8s_client)
app_api = client.AppsV1beta1Api(k8s_client)
pod_0 = core_api.read_namespaced_pod(
Expand Down
8 changes: 5 additions & 3 deletions kubernetes/e2e_test/test_yaml/dep-deployment.yaml
Original file line number Diff line number Diff line change
@@ -1,18 +1,20 @@
apiVersion: extensions/v1beta1
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
namespace: dep
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.7.9
image: nginx:1.15.4
ports:
- containerPort: 80

17 changes: 0 additions & 17 deletions kubernetes/e2e_test/test_yaml/extensions-deployment.yaml

This file was deleted.

7 changes: 5 additions & 2 deletions kubernetes/e2e_test/test_yaml/list.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,19 +11,22 @@ items:
port: 80
selector:
app: list-deployment-test
- apiVersion: extensions/v1beta1
- apiVersion: apps/v1
kind: Deployment
metadata:
name: list-deployment-test
labels:
app: list-deployment-test
spec:
replicas: 1
selector:
matchLabels:
app: list-deployment-test
template:
metadata:
labels:
app: list-deployment-test
spec:
containers:
- name: nginx
image: nginx
image: nginx:1.15.4
21 changes: 15 additions & 6 deletions kubernetes/e2e_test/test_yaml/triple-nginx.yaml
Original file line number Diff line number Diff line change
@@ -1,50 +1,59 @@
apiVersion: extensions/v1beta1
apiVersion: apps/v1
kind: Deployment
metadata:
name: triple-nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.7.9
image: nginx:1.15.4
ports:
- containerPort: 80
---
apiVersion: extensions/v1beta1
apiVersion: apps/v1
kind: Deployment
metadata:
name: triple-nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.7.9
image: nginx:1.15.4
ports:
- containerPort: 80
---
apiVersion: extensions/v1beta1
apiVersion: apps/v1
kind: Deployment
metadata:
name: triple-nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.7.9
image: nginx:1.15.4
ports:
- containerPort: 80

0 comments on commit 7b9ec5f

Please sign in to comment.