• helm-chart3,函数和管道


    一个简单的函数

    quote : 引入字符串,具体看示例:

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: {{ .Release.Name }}-configmap
    data:
      myvalue: "Hello World"
      drink: {{ quote .Values.favorite.drink }}
     
    

    这里 drink 的值会被渲染为 "tea"(比之前多引号)

    Helm拥有超过60种可用函数。其中一些是由Go模板语言Go template language 本身定义的。其他大多数都是Sprig模板库Sprig template library的一部分。 后边会再介绍几个。

    管道 和几个函数

    类似UNIX 的管道,前者的输出,可以作为后者的输入。

    比如,利用管道,上边的模板可以写成这样:

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: {{ .Release.Name }}-configmap
    data:
      myvalue: "Hello World"
      drink: {{ .Values.favorite.drink | quote }}
     
     # upper 函数
      drinkTea: {{ .Values.favorite.drink |upper| quote }}
     
     # repeat 函数
      drinkT: {{ .Values.favorite.drink | repeat 5 | quote }}
      
      
      # default 函数
      drinkT2: {{ .Values.favorite.drink | default "coffee" | quote }}
      
      # 
    

    反转顺序是模板中的常见做法 .val | quote比quote .val更常见

    其结果为: drink:"tea" , drinkTea:"TEA" ,drinkT:"teateateateatea" ,drinkT2:"tea"

    其中 upper 是一个转大写的函数。
    repeat是一个重复渲染输入参数的函数,5是次数。

      defualt 则是指定一个默认值,如果原来的值为null则设为默认值(coffee)。
    

    实际使用中,静态的值应当在values.yaml中定义好,动态计算的值才放在default 里。

    drink: {{ .Values.favorite.drink | default (printf "%s-tea" (include "fullname" .)) }}
    
    
  • 相关阅读:
    数列分段 II
    Best Cow Fences
    愤怒的牛
    linux 查看文件
    糖果传递
    BL刀片更换主板设置raid
    glance启停
    depot制作
    刀片服务器密码过期, console无法登录解决方案
    DP无法删除失效的多路径链路方法
  • 原文地址:https://www.cnblogs.com/mingbai/p/chart3.html
Copyright © 2020-2023  润新知