Feature 10239: Distributed VCA
[osm/N2VC.git] / n2vc / k8s_helm3_conn.py
index f79816d..7d69168 100644 (file)
@@ -71,13 +71,32 @@ class K8sHelm3Connector(K8sHelmBaseConnector):
             self,
             cluster_uuid: str,
             kdu_model: str,
+            kdu_instance: str,
             atomic: bool = True,
             timeout: float = 300,
             params: dict = None,
             db_dict: dict = None,
             kdu_name: str = None,
             namespace: str = None,
+            **kwargs,
     ):
+        """Install a helm chart
+
+        :param cluster_uuid str: The UUID of the cluster to install to
+        :param kdu_model str: The name or path of a bundle to install
+        :param kdu_instance: Kdu instance name
+        :param atomic bool: If set, waits until the model is active and resets
+                            the cluster on failure.
+        :param timeout int: The time, in seconds, to wait for the install
+                            to finish
+        :param params dict: Key-value pairs of instantiation parameters
+        :param kdu_name: Name of the KDU instance to be installed
+        :param namespace: K8s namespace to use for the KDU instance
+
+        :param kwargs: Additional parameters (None yet)
+
+        :return: True if successful
+        """
         _, cluster_id = self._get_namespace_cluster_id(cluster_uuid)
         self.log.debug("installing {} in cluster {}".format(kdu_model, cluster_id))
 
@@ -95,22 +114,25 @@ class K8sHelm3Connector(K8sHelmBaseConnector):
             if namespace not in namespaces:
                 await self._create_namespace(cluster_id, namespace)
 
-        kdu_instance = await self._install_impl(cluster_id,
-                                                kdu_model,
-                                                paths,
-                                                env,
-                                                atomic=atomic,
-                                                timeout=timeout,
-                                                params=params,
-                                                db_dict=db_dict,
-                                                kdu_name=kdu_name,
-                                                namespace=namespace)
+        await self._install_impl(
+            cluster_id,
+            kdu_model,
+            paths,
+            env,
+            kdu_instance,
+            atomic=atomic,
+            timeout=timeout,
+            params=params,
+            db_dict=db_dict,
+            kdu_name=kdu_name,
+            namespace=namespace,
+        )
 
         # sync fs
         self.fs.reverse_sync(from_path=cluster_id)
 
         self.log.debug("Returning kdu_instance {}".format(kdu_instance))
-        return kdu_instance
+        return True
 
     async def inspect_kdu(self, kdu_model: str, repo_url: str = None) -> str: