Fix 1539: Add --skip-repo option for Helm
If stablerepourl is not set, Helm will skip adding the stablerepo.
Depends on:
- https://osm.etsi.org/gerrit/#/c/osm/devops/+/10915
Change-Id: I11f10fdfba24ec274d463f12c07d7b0247b37068
Signed-off-by: David Garcia <david.garcia@canonical.com>
(cherry picked from commit 4395cfa6c7d0d80980c00d9f078440e0333fd826)
diff --git a/n2vc/k8s_helm_conn.py b/n2vc/k8s_helm_conn.py
index 46a0e99..6bbc0fa 100644
--- a/n2vc/k8s_helm_conn.py
+++ b/n2vc/k8s_helm_conn.py
@@ -43,7 +43,6 @@
helm_command: str = "/usr/bin/helm",
log: object = None,
on_update_db=None,
- vca_config: dict = None,
):
"""
Initializes helm connector for helm v2
@@ -65,15 +64,17 @@
kubectl_command=kubectl_command,
helm_command=helm_command,
on_update_db=on_update_db,
- vca_config=vca_config,
)
self.log.info("Initializing K8S Helm2 connector")
# initialize helm client-only
self.log.debug("Initializing helm client-only...")
- command = "{} init --client-only --stable-repo-url {} ".format(
- self._helm_command, self._stable_repo_url
+ command = "{} init --client-only {} ".format(
+ self._helm_command,
+ "--stable-repo-url {}".format(self._stable_repo_url)
+ if self._stable_repo_url
+ else "--skip-repos",
)
try:
asyncio.ensure_future(
@@ -299,14 +300,16 @@
command = (
"{} --kubeconfig={} --tiller-namespace={} --home={} --service-account {} "
- " --stable-repo-url {} init"
+ " {} init"
).format(
self._helm_command,
paths["kube_config"],
namespace,
paths["helm_dir"],
self.service_account,
- self._stable_repo_url,
+ "--stable-repo-url {}".format(self._stable_repo_url)
+ if self._stable_repo_url
+ else "--skip-repos",
)
_, _rc = await self._local_async_exec(
command=command, raise_exception_on_error=True, env=env
@@ -321,13 +324,15 @@
self.log.info("Initializing helm in client: {}".format(cluster_id))
command = (
"{} --kubeconfig={} --tiller-namespace={} "
- "--home={} init --client-only --stable-repo-url {} "
+ "--home={} init --client-only {} "
).format(
self._helm_command,
paths["kube_config"],
namespace,
paths["helm_dir"],
- self._stable_repo_url,
+ "--stable-repo-url {}".format(self._stable_repo_url)
+ if self._stable_repo_url
+ else "--skip-repos",
)
output, _rc = await self._local_async_exec(
command=command, raise_exception_on_error=True, env=env
@@ -342,7 +347,8 @@
if repo["name"] == "stable" and repo["url"] != self._stable_repo_url:
self.log.debug("Add new stable repo url: {}")
await self.repo_remove(cluster_uuid, "stable")
- await self.repo_add(cluster_uuid, "stable", self._stable_repo_url)
+ if self._stable_repo_url:
+ await self.repo_add(cluster_uuid, "stable", self._stable_repo_url)
break
return n2vc_installed_sw