使用kubeconfig内联的Helm命令

nar*_*rcs 2 deis azure-pipelines-release-pipeline kubernetes-helm

我正在尝试使用运行命令VSTS扩展名对VSTS版本定义执行helm命令,但问题是它无法在我配置的自定义生成代理上找到kubeconfig文件。我认为这是因为定义的构建步骤在单独的过程中运行。当我跑步

kubectl config view
Run Code Online (Sandbox Code Playgroud)

它给了我一个空的配置文件。只想知道我在执行Helm命令之类的命令时是否可以内联提供kubeconfig文件

helm init --kubeconfig=kubeconfigpath
Run Code Online (Sandbox Code Playgroud)

还是有什么办法可以在vsts发布过程中运行helm命令之前设置kubeconfig文件?

感谢任何帮助。谢谢。

zam*_*kib 6

'helm init'命令通过读取$ KUBECONFIG变量(默认为'〜/ .kube / config')并使用默认的Kubernetes上下文来发现Kubernetes集群的配置。如果使用其他配置文件,则必须更改$ KUBECONFIG值,以便掌舵人可以从正确的配置文件中获取有关群集的信息。

更改$ KUBECONFIG值

export KUBECONFIG=/path_to_your_kubeconfig_file

为了安全起见,请使用--kube-contex标志指定当前上下文

helm init --kube-context CONTEXT_NAME --upgrade

使用以下命令检查头盔客户端和分till器版本

helm version


sta*_*SFT 3

尝试通过kubectl命令指定 kubeconfig 文件。

kubectl config SUBCOMMAND
Run Code Online (Sandbox Code Playgroud)

选项

-h, --help=false: help for config
      --kubeconfig="": use a particular kubeconfig file
Run Code Online (Sandbox Code Playgroud)

另一方面,您可以尝试更改构建代理帐户(例如您的帐户)并检查它是否可以找到kubeconfig文件(权限问题)