一。注意事项

1.values.yaml   中可以使用'#'号注释行,而/templates 下的文件不能用#号,如果要注释可以使用 {{/*  context  */}}

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

2。{{-    #忽略前面空格 ,-}} #忽略后面空格

3.在yaml中如果要输入大块有格式的数据可以用   ‘|-’,这样就会保留原有格式,否则我们加载到程序中时不会保留原有格式

4.在YAML中可以使用 '!!str' 将内容强制为字符类型,'!!int'将内容强制转换为整数类型

5.include与 template的区别:

  template后面无法使用管道,template只是一个动作而不是一个函数,数据属性是内联的,无缩进

  include是一个函数,后面可以使用管道,可以利用indent函数缩进

 

 

 

 

 

二。命令使用:

helm template ../test -x templates/configmap.yaml     #查看模板渲染结果

 

三。内置方法:

1.title       #首字母大写

2.upper   #转为大写

3.quote   #用引号括起来

4.default val   #定义一个默认值

5.requied       #定义一个约束,values文件中必须定义此值,否则就报错

6.b64enc      #使用base64加密

7.b64dec      #使用base64解密

8.indent INT  #缩进指定字符

9.nindent INT #在新行缩进

 

四。模板变量:

{{- $NAME := .Release.Name -}}           #定义变量并赋值
{{ $NAME }} #变量引用
上面定义的变量的作用是全局的,而下面的示例变量的范围则是局部的,只作用于定义的块中:
#字典循环:
  {{- range $key, $val := .Values.favorite }}
  {{ $key }}: {{ $val | quote }}
  {{- end}}

#列表循环:

{{ range $index, $val := .Values.name }}
{{ $index }} : {{ $val }}
{{ end }}

Note:在helm中循环使用range来实现的,没有FOR。

 

 
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄