summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
47f6538)
Change-Id: I427d20f6e184c889de91a384d921eb7edaf00e95
Signed-off-by: bravof <fbravo@whitestack.com>
@abc.abstractmethod
async def repo_add(
@abc.abstractmethod
async def repo_add(
- self, cluster_uuid: str, name: str, url: str, repo_type: str = "chart"
+ self,
+ cluster_uuid: str,
+ name: str,
+ url: str,
+ repo_type: str = "chart",
+ cert: str = None,
+ user: str = None,
+ password: str = None,
):
"""
Add a new repository to OSM database
):
"""
Add a new repository to OSM database
return cluster_id, n2vc_installed_sw
async def repo_add(
return cluster_id, n2vc_installed_sw
async def repo_add(
- self, cluster_uuid: str, name: str, url: str, repo_type: str = "chart"
+ self,
+ cluster_uuid: str,
+ name: str,
+ url: str,
+ repo_type: str = "chart",
+ cert: str = None,
+ user: str = None,
+ password: str = None,
):
self.log.debug(
"Cluster {}, adding {} repository {}. URL: {}".format(
):
self.log.debug(
"Cluster {}, adding {} repository {}. URL: {}".format(
)
# helm repo add name url
)
# helm repo add name url
- command = "env KUBECONFIG={} {} repo add {} {}".format(
+ command = ("env KUBECONFIG={} {} repo add {} {}").format(
paths["kube_config"], self._helm_command, name, url
)
paths["kube_config"], self._helm_command, name, url
)
+
+ if cert:
+ temp_cert_file = os.path.join(
+ self.fs.path, "{}/helmcerts/".format(cluster_id), "temp.crt"
+ )
+ os.makedirs(os.path.dirname(temp_cert_file), exist_ok=True)
+ with open(temp_cert_file, "w") as the_cert:
+ the_cert.write(cert)
+ command += " --ca-file {}".format(temp_cert_file)
+
+ if user:
+ command += " --username={}".format(user)
+
+ if password:
+ command += " --password={}".format(password)
+
self.log.debug("adding repo: {}".format(command))
await self._local_async_exec(
command=command, raise_exception_on_error=True, env=env
self.log.debug("adding repo: {}".format(command))
await self._local_async_exec(
command=command, raise_exception_on_error=True, env=env
# add repo
self.log.debug("add repo {}".format(db_repo["name"]))
# add repo
self.log.debug("add repo {}".format(db_repo["name"]))
- await self.repo_add(
- cluster_uuid, db_repo["name"], db_repo["url"]
- )
+ if "ca_cert" in db_repo:
+ await self.repo_add(
+ cluster_uuid,
+ db_repo["name"],
+ db_repo["url"],
+ cert=db_repo["ca_cert"],
+ )
+ else:
+ await self.repo_add(
+ cluster_uuid,
+ db_repo["name"],
+ db_repo["url"],
+ )
added_repo_dict[repo_id] = db_repo["name"]
except Exception as e:
raise K8sException(
added_repo_dict[repo_id] = db_repo["name"]
except Exception as e:
raise K8sException(
name: str,
url: str,
_type: str = "charm",
name: str,
url: str,
_type: str = "charm",
+ cert: str = None,
+ user: str = None,
+ password: str = None,
):
raise MethodNotImplemented()
):
raise MethodNotImplemented()