企业🤖AI Agent构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
[TOC] ### **if-else** if-else的语法如下 ``` {{ if PIPELINE }} # Do something {{ else if OTHER PIPELINE }} # Do something else {{ else }} # Default case {{ end }} ``` PINELINE的值会被计算为false,如果值为: * 就为boolean值false * 数字0 * 空字符串 * nil * 空集合(map、slice、array等) ### **控制空白符(Whitespace)** 首先我们来看如下一个例子: ``` apiVersion: v1 kind: ConfigMap metadata: name: {{ .Release.Name }}-configmap data: food: {{ .Values.food }} {{ if true }} drink: good-drink {{ end }} ``` 上面的`{{ .Release.Name }}`和`{{ .Values.food }}`会直接渲染成对应的值,但是`{{ if true }}` 语句会留下一个Whitespace,上面的模板经过渲染之后,会变成类似如下的yaml文件: ``` apiVersion: v1 kind: ConfigMap metadata: name: peng-configmap data: food: fish drink: good-drink ``` 为了控制空白符,我们可以使用`-`,比如为了去掉上面的空白行,我们可以写成如下: ``` apiVersion: v1 kind: ConfigMap metadata: name: {{ .Release.Name }}-configmap data: food: {{ .Values.food }} {{- if true }} drink: good-drink {{- end }} ``` `{{- `会去掉左边的whitespace,` -}}`会去掉右边的whitespace。 ### **with** ### **range**