Improved Kubernetes management
[osm/osmclient.git] / osmclient / scripts / osm.py
index 9ca159f..df638a0 100755 (executable)
@@ -3826,6 +3826,14 @@ def sdnc_show(ctx, name):
     default="kube-system",
     help="namespace to be used for its operation, defaults to `kube-system`",
 )
+@click.option(
+    "--wait",
+    required=False,
+    default=False,
+    is_flag=True,
+    help="do not return the control immediately, but keep it "
+    "until the operation is completed, or timeout",
+)
 @click.option(
     "--cni",
     default=None,
@@ -3839,7 +3847,7 @@ def sdnc_show(ctx, name):
 #              help='do not return the control immediately, but keep it until the operation is completed, or timeout')
 @click.pass_context
 def k8scluster_add(
-    ctx, name, creds, version, vim, k8s_nets, description, namespace, cni
+    ctx, name, creds, version, vim, k8s_nets, description, namespace, wait, cni
 ):
     """adds a K8s cluster to OSM
 
@@ -3860,7 +3868,7 @@ def k8scluster_add(
         cluster["namespace"] = namespace
     if cni:
         cluster["cni"] = yaml.safe_load(cni)
-    ctx.obj.k8scluster.create(name, cluster)
+    ctx.obj.k8scluster.create(name, cluster, wait)
     # except ClientException as e:
     #     print(str(e))
     #     exit(1)
@@ -3882,12 +3890,20 @@ def k8scluster_add(
     "--namespace",
     help="namespace to be used for its operation, defaults to `kube-system`",
 )
+@click.option(
+    "--wait",
+    required=False,
+    default=False,
+    is_flag=True,
+    help="do not return the control immediately, but keep it "
+    "until the operation is completed, or timeout",
+)
 @click.option(
     "--cni", help="list of CNI plugins, in JSON inline format, used in the cluster"
 )
 @click.pass_context
 def k8scluster_update(
-    ctx, name, newname, creds, version, vim, k8s_nets, description, namespace, cni
+    ctx, name, newname, creds, version, vim, k8s_nets, description, namespace, wait, cni
 ):
     """updates a K8s cluster
 
@@ -3913,7 +3929,7 @@ def k8scluster_update(
         cluster["namespace"] = namespace
     if cni:
         cluster["cni"] = yaml.safe_load(cni)
-    ctx.obj.k8scluster.update(name, cluster)
+    ctx.obj.k8scluster.update(name, cluster, wait)
     # except ClientException as e:
     #     print(str(e))
     #     exit(1)
@@ -3924,18 +3940,23 @@ def k8scluster_update(
 @click.option(
     "--force", is_flag=True, help="forces the deletion from the DB (not recommended)"
 )
-# @click.option('--wait',
-#              is_flag=True,
-#              help='do not return the control immediately, but keep it until the operation is completed, or timeout')
+@click.option(
+    "--wait",
+    required=False,
+    default=False,
+    is_flag=True,
+    help="do not return the control immediately, but keep it "
+    "until the operation is completed, or timeout",
+)
 @click.pass_context
-def k8scluster_delete(ctx, name, force):
+def k8scluster_delete(ctx, name, force, wait):
     """deletes a K8s cluster
 
     NAME: name or ID of the K8s cluster to be deleted
     """
     # try:
     check_client_version(ctx.obj, ctx.command.name)
-    ctx.obj.k8scluster.delete(name, force=force)
+    ctx.obj.k8scluster.delete(name, force, wait)
     # except ClientException as e:
     #     print(str(e))
     #     exit(1)