我可以直接将 yaml(或 json,可以)传递给 helm 吗?

问题描述 投票:0回答:1

我希望能够做这样的事情:

VALUES="
port: 80
"

helm install mychart ./mychart --set "${VALUES}"
# or
helm install mychart ./mychart --values "${VALUES}"

这当然不是我直接使用的,而是我想强烈利用一个可以环绕 helm 的工具。 helm 图表和可定制值的编排如果能够以这种方式进行将非常棒(可以让我做到这一点的工具是 Tilt btw,它很棒)。我什至对 json 支持感到满意,

yq
可以处理这样的输入流并即时转换为 json。

当然可以,helm 可以支持:

cat "${VALUES"} > tmpfile.yaml
helm install mychart ./mychart --values ./tmpfile.yaml 

但是 :( 这会导致用例发生更多变化。这实际上将管理许多可定制和动态的 helm 值,我不希望许多临时文件弄乱人们的系统。

kubernetes-helm
1个回答
0
投票

您可以将您的环境变量直接通过管道传递到 helm 命令中,并通过标准输入读取它:

echo $VALUES | helm install mychart ./mychart -f -

这里有一个更好的解释: https://askubuntu.com/questions/1074067/what-does-the-syntax-of-pipe-and-ending-dash-mean

© www.soinside.com 2019 - 2024. All rights reserved.