我必须根据某些条件检查强制值。
My values.yaml 如下
id: 3
test:
id: 2
test1:
id: 1
在我的模板中,我需要检查id
是否存在于.Values.test.test1.id
中,并分配该值。如果不回退到.Values.test.id
,最后回退到.Values.id
。但是id
必须是强制性的,我需要使用所需的函数。
我的模板如下
{{- if .Values.test.test1.id }}
<assign> {{ .Values.test.test1.id }}
{{- else }}
{{- $id := .Values.test.id }}
{{- $id2 := .Values.id }}
<assign> <need to check required with or of $id $id2> </assign>
{{- end }}
我知道这可以用一个elseif
在if
和else
之间来解决。但是我需要对许多id重复同样的逻辑。
实现这一目标的最佳途径是什么?
1条答案
按热度按时间fdx2calv1#
它似乎非常适合
coalesce
函数,获取一个值列表并返回第一个非空值。
当没有定义
test
或test.test1
字典时,您还需要使用default
函数来转换大小写。所有这些加在一起,给出:
以下是测试用例和结果:
当 * 值.yaml* 是
当 * 值.yaml* 是
当 * 值.yaml* 是