[英]Helm override values.yaml with set in array
我已经看到了很多围绕这个主题的问题,但对于我所看到的没有很好的答案。 我们有一个像这样的值文件:
ingress:
enabled: "false"
className: ""
annotations:
{}
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
hosts:
- host: chart-example.local
paths:
- path: /
pathType: ImplementationSpecific
我们想要覆盖列表项“host”的值。 我的期望是--set ingress.hosts[0].host="www.myhost.com"
会这样做,但我们看到一个错误,指出no matches found: ingress.hosts[0].host=www.myhost.com
。
我错过了什么? 这是 Helm 3.9.2。
Zsh
中的方括号具有特殊含义,因此如果您使用Zsh
(根据您的错误,我认为是这种情况),您只需通过在它们前面加上\
(反斜杠)来转义它们:
--set ingress.hosts\[0\].host="www.myhost.com"
或通过在您的命令之前添加noglob
:
noglob helm ...
您也可以通过将此别名添加到您的.zshrc
来默认转义它们:
alias helm='noglob helm'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.