我可以在Helm yamls中做这样的事情:
{{- if eq .Values.isCar true }} OR {{- if eq .Values.isBus true }}
# do something
{{- end }}
我知道如果检查我们可以做一个。但是我如何检查多种情况?是否有一些运算符等效于OR和AND?
答案 0 :(得分:24)
如Helm documentation on operators:
所示对于模板,运算符(
eq
,ne
,lt
,gt
,and
,or
等等都是作为功能实现。在管道中,可以使用括号((
和)
)对操作进行分组。
这意味着您可以使用
{{- if or (eq .Values.isCar true) (eq .Values.isBus true) }}
此外,正如if/else structure:
中所述如果值为:
,则管道被评估为false
- 布尔值假
- 数字零
- 一个空字符串
- 一个零(空或空)
- 一个空集合(map,slice,tuple,dict,array)
在所有其他条件下,条件为真。
如果您的属性(isCar
和isBus
)是布尔值,则可以跳过同等检查:
{{- if or .Values.isCar .Values.isBus }}