如何在 AND 条件中包含字符串并使用 Helm 返回布尔值?

问题描述 投票:0回答:1

我想使用 AND 运算符检查多个条件并生成布尔值作为值,而无需使用 if 语句。

# template.yaml
- name: VARIABLE_NAME
  value: {{ and (.Values.boolValue) (.Values.stringValue) }}
# values.yaml
boolValue: true
stringValue: "value"

上面的示例生成以下模板。

- name: VARIABLE_NAME
  value: "value"

是否可以将返回值转换为布尔值,以便结果如下?

- name:
  value: true
kubernetes kubernetes-helm
1个回答
0
投票

逻辑运算符不会将非布尔值转换为布尔值。如果没有 if 语句,非布尔值将传递到结果。具体来说,可以使用 empty 函数将字符串转换为布尔值,该函数将检查

null
和空字符串。

# template.yaml
- name: VARIABLE_NAME
  value: {{ and (.Values.boolValue) (not (.Values.stringValue | empty)) }}
© www.soinside.com 2019 - 2024. All rights reserved.