helm 中共享 tpl 写法

当有多个 chart 需要共用一些配置时,就需要将共用的提取出来,单独组成一个 chart ,然后其他 chart 来引用它,这和写代码是相同的逻辑。

这篇文章仅写一下在这过程中需要注意的事项:

写 chart:

Chart.yaml 中需要包含如下信息:

name: name: auditlogd-service

type: library

version: 5.1.0

其中

  • name 的值,可以随便写,之后需要用到它。
  • type 的值需要是 library
  • version 版本号,也可以随便写,但之后这个数字是要递增的

templates 中文件名的注意事项:

  • templates 中的文件可以是 yaml 结尾,也可以是 tpl 结尾
  • templates 中的文件必须以 _ 开头,例如 _config.yaml
  • _helpers.tpl 一般放在 templates/lib 文件夹下

templates  中定义的模版需要如下格式:

{{- define "auditlogd.sidecar.tpl" -}}

   ...

{{- end }}

 

{{- define "auditlogd.sidecar" -}}

{{- include "auditlogd.sidecar.tpl" . -}}

{{- end -}}

先定义一个 .tpl,再定义一个没有 .tpl 的模版

用 chart:

Chart.yaml 中要追加:

dependencies:

  - name: auditlogd-service-common

    repository: file://../../

    version: 5.1.0
  • dependencies 中的 name 需要与 上方的 name 一致
  • dependencies 中的 repository 需要制定 上方的 chart 所在位置
  • dependencies 中的 version 需要与上方的 version 一致

在 yaml 中使用上方定义的公共模版:

{{ include "auditlogd.sidecar" . }}

or

{{ template"auditlogd.sidecar" . }}

至于用哪种,这取决于 include 和 template 的用法

它两者都是将之前定义好的 模板 嵌入到文件中去;include 可以使用 管道 对数据做二次处理; template 不行。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值