我正在嘗試使用以下代碼在 helm 中創(chuàng)建我的配置映射: api: "{{ .Values.global.api }}", demo: {{ .Values.global.api | contains "demo" }}, other: ....,other如果 Values.global.api 不包含“demo”和“prod”,我想設(shè)置為 true。就像是other: {{ .Values.global.api | NOT (contains "demo" AND contains "prod") }},
1 回答

慕哥6287543
TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超10個(gè)贊
在 Gotext/template語言中,管道和函數(shù)調(diào)用是等價(jià)的,您可以在任一方向上自由替換
{{ x | f a b }}
{{ f a b (x) }}
您不能像您在這里建議的那樣在多個(gè)函數(shù)之間分配參數(shù);您需要重復(fù)它(或?qū)⑵浞湃刖植孔兞恐校?。查看Sprig函數(shù)的目錄,我不確定是否有任何特定的函數(shù)可以滿足您的需求,從而使這變得更簡單。你必須把它拼出來:
demo: {{ not (and (contains "demo" .Values.global.api) (contains "prod" .Values.global.api)) }}
正如我在括號(hào)中建議的那樣,您可以使用局部變量來縮短一點(diǎn):
{{- $api := .Values.global.api }}
api: {{ quote $api }}
demo: {{ not (and (contains "demo" $api) (contains "prod" $api)) }}
- 1 回答
- 0 關(guān)注
- 130 瀏覽
添加回答
舉報(bào)
0/150
提交
取消