用例:我有 values.yaml,其中有一个字段 mode
。
值.yaml
mode: start
或者用户可以通过以下任何一种方式为字段 mode
输入值:
mode: STart or START or sTart
现在,我有一个文件,我在其中使用 if 条件,如下所示:
command: {{ if eq .Values.mode "start" }} do this {{ esle }} do that {{ end }}
现在,我面临的挑战是如何在进行比较之前将“.Values.mode”转换为小写字母。我尝试了以下提到的方法:
1.
{{ if eq .Values.mode | lower "start" }} do this {{ esle }} do that {{ end }}
{{ if eq lower .Values.mode "start" }} do this {{ esle }} do that {{ end }}
以上两种方法都出错了。
注意:我们使用的是第三方工具,因此 JSON 模式检查对我没有帮助。
最佳答案
lower
是在模板中交给你的一个功能。它有一个返回值,您希望将其与另一个值进行比较。
只需将 lower
的函数调用用括号括起来:
{{ if eq "start" (lower .Values.mode) }} do this {{ else }} do that {{ end }}
关于go - Helm : How to convert a string into lower/upper case inside if-else condition?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66785224/