1515from kubernetes import client , config
1616
1717
18- def create_deployment (extensions_v1_beta1 ):
18+ def create_deployment (apps_v1_api ):
1919 container = client .V1Container (
2020 name = "deployment" ,
21- image = "ratanboddu/flaskapp:basic " ,
21+ image = "gcr.io/google-appengine/fluentd-logger " ,
2222 image_pull_policy = "Never" ,
2323 ports = [client .V1ContainerPort (container_port = 5678 )],
2424 )
@@ -27,18 +27,18 @@ def create_deployment(extensions_v1_beta1):
2727 metadata = client .V1ObjectMeta (labels = {"app" : "deployment" }),
2828 spec = client .V1PodSpec (containers = [container ]))
2929 # Spec
30- spec = client .ExtensionsV1beta1DeploymentSpec (
30+ spec = client .V1DeploymentSpec (
3131 replicas = 1 ,
3232 template = template )
3333 # Deployment
34- deployment = client .ExtensionsV1beta1Deployment (
35- api_version = "extensions/v1beta1 " ,
34+ deployment = client .V1Deployment (
35+ api_version = "apps/v1 " ,
3636 kind = "Deployment" ,
3737 metadata = client .V1ObjectMeta (name = "deployment" ),
3838 spec = spec )
3939 # Creation of the Deployment in specified namespace
4040 # (Can replace "default" with a namespace you may have created)
41- extensions_v1_beta1 .create_namespaced_deployment (
41+ apps_v1_api .create_namespaced_deployment (
4242 namespace = "default" , body = deployment
4343 )
4444
@@ -64,20 +64,20 @@ def create_service():
6464 core_v1_api .create_namespaced_service (namespace = "default" , body = body )
6565
6666
67- def create_ingress (extensions_v1_beta1 ):
68- body = client .ExtensionsV1beta1Ingress (
67+ def create_ingress (networking_v1_beta1_api ):
68+ body = client .NetworkingV1beta1Ingress (
6969 api_version = "networking.k8s.io/v1beta1" ,
7070 kind = "Ingress" ,
7171 metadata = client .V1ObjectMeta (name = "ingress-example" , annotations = {
7272 "nginx.ingress.kubernetes.io/rewrite-target" : "/"
7373 }),
74- spec = client .ExtensionsV1beta1IngressSpec (
75- rules = [client .ExtensionsV1beta1IngressRule (
74+ spec = client .NetworkingV1beta1IngressSpec (
75+ rules = [client .NetworkingV1beta1IngressRule (
7676 host = "boddulabs.com" ,
77- http = client .ExtensionsV1beta1HTTPIngressRuleValue (
78- paths = [client .ExtensionsV1beta1HTTPIngressPath (
77+ http = client .NetworkingV1beta1HTTPIngressRuleValue (
78+ paths = [client .NetworkingV1beta1HTTPIngressPath (
7979 path = "/" ,
80- backend = client .ExtensionsV1beta1IngressBackend (
80+ backend = client .NetworkingV1beta1IngressBackend (
8181 service_port = 5678 ,
8282 service_name = "service-example" )
8383
@@ -89,7 +89,7 @@ def create_ingress(extensions_v1_beta1):
8989 )
9090 # Creation of the Deployment in specified namespace
9191 # (Can replace "default" with a namespace you may have created)
92- extensions_v1_beta1 .create_namespaced_ingress (
92+ networking_v1_beta1_api .create_namespaced_ingress (
9393 namespace = "default" ,
9494 body = body
9595 )
@@ -98,13 +98,12 @@ def create_ingress(extensions_v1_beta1):
9898def main ():
9999 # Fetching and loading local Kubernetes Information
100100 config .load_kube_config ()
101- # For incluster details
102- # config.load_incluster_config()
103- extensions_v1_beta1 = client .ExtensionsV1beta1Api ()
101+ apps_v1_api = client .AppsV1Api ()
102+ networking_v1_beta1_api = client .NetworkingV1beta1Api ()
104103
105- create_deployment (extensions_v1_beta1 )
104+ create_deployment (apps_v1_api )
106105 create_service ()
107- create_ingress (extensions_v1_beta1 )
106+ create_ingress (networking_v1_beta1_api )
108107
109108
110109if __name__ == "__main__" :
0 commit comments