diff --git a/pyhelm3/client.py b/pyhelm3/client.py index 423b6d6..4fec72b 100644 --- a/pyhelm3/client.py +++ b/pyhelm3/client.py @@ -54,6 +54,8 @@ def __init__( insecure_skip_tls_verify: bool = False, kubeconfig: t.Optional[pathlib.Path] = None, kubecontext: t.Optional[str] = None, + kubeapiserver: t.Optional[str] = None, + kubetoken: t.Optional[str] = None, unpack_directory: t.Optional[str] = None ): self._command = command or Command( @@ -63,6 +65,8 @@ def __init__( insecure_skip_tls_verify = insecure_skip_tls_verify, kubeconfig = kubeconfig, kubecontext = kubecontext, + kubeapiserver = kubeapiserver, + kubetoken = kubetoken, unpack_directory = unpack_directory ) diff --git a/pyhelm3/command.py b/pyhelm3/command.py index 7e8ca95..1b25c2d 100644 --- a/pyhelm3/command.py +++ b/pyhelm3/command.py @@ -145,6 +145,8 @@ def __init__( insecure_skip_tls_verify: bool = False, kubeconfig: t.Optional[pathlib.Path] = None, kubecontext: t.Optional[str] = None, + kubeapiserver: t.Optional[str] = None, + kubetoken: t.Optional[str] = None, unpack_directory: t.Optional[str] = None ): self._logger = logging.getLogger(__name__) @@ -154,6 +156,8 @@ def __init__( self._insecure_skip_tls_verify = insecure_skip_tls_verify self._kubeconfig = kubeconfig self._kubecontext = kubecontext + self._kubeapiserver = kubeapiserver + self._kubetoken = kubetoken self._unpack_directory = unpack_directory def _log_format(self, argument): @@ -174,6 +178,12 @@ async def run(self, command: t.List[str], input: t.Optional[bytes] = None) -> by command.extend(["--kubeconfig", self._kubeconfig]) if self._kubecontext: command.extend(["--kube-context", self._kubecontext]) + if self._kubeapiserver: + command.extend(["--kube-apiserver", self._kubeapiserver]) + if self._kubetoken: + command.extend(["--kube-token", self._kubetoken]) + if self._insecure_skip_tls_verify: + command.append("--kube-insecure-skip-tls-verify") # The command must be made up of str and bytes, so convert anything that isn't shell_formatted_command = shlex.join( part if isinstance(part, (str, bytes)) else str(part) @@ -545,8 +555,6 @@ async def install_or_upgrade( command.append("--dry-run") if force: command.append("--force") - if self._insecure_skip_tls_verify: - command.append("--insecure-skip-tls-verify") if namespace: command.extend(["--namespace", namespace]) if no_hooks: @@ -627,8 +635,6 @@ async def pull( command = ["pull", chart_ref, "--destination", destination, "--untar"] if devel: command.append("--devel") - if self._insecure_skip_tls_verify: - command.append("--insecure-skip-tls-verify") if repo: command.extend(["--repo", repo]) if version: @@ -649,8 +655,6 @@ async def repo_add(self, name: str, url: str): Returns the new repo list on success. """ command = ["repo", "add", name, url, "--force-update"] - if self._insecure_skip_tls_verify: - command.append("--insecure-skip-tls-verify") await self.run(command) async def repo_update(self, *names: str): @@ -755,8 +759,6 @@ async def show_chart( command = ["show", "chart", chart_ref] if devel: command.append("--devel") - if self._insecure_skip_tls_verify: - command.append("--insecure-skip-tls-verify") if repo: command.extend(["--repo", repo]) if version: @@ -780,8 +782,6 @@ async def show_crds( # command = ["show", "crds", chart_ref] # if devel: # command.append("--devel") - # if self._insecure_skip_tls_verify: - # command.append("--insecure-skip-tls-verify") # if repo: # command.extend(["--repo", repo]) # if version: @@ -840,8 +840,6 @@ async def show_readme( command = ["show", "readme", chart_ref] if devel: command.append("--devel") - if self._insecure_skip_tls_verify: - command.append("--insecure-skip-tls-verify") if repo: command.extend(["--repo", repo]) if version: @@ -862,8 +860,6 @@ async def show_values( command = ["show", "values", chart_ref] if devel: command.append("--devel") - if self._insecure_skip_tls_verify: - command.append("--insecure-skip-tls-verify") if repo: command.extend(["--repo", repo]) if version: @@ -914,8 +910,6 @@ async def template( ] if devel: command.append("--devel") - if self._insecure_skip_tls_verify: - command.append("--insecure-skip-tls-verify") if is_upgrade: command.append("--is-upgrade") if namespace: