zoukankan      html  css  js  c++  java
  • Helm-2: 创建自己的Chart

    首先, 创建一个Chart: helm create mychart
    接下来, 讨论的假设前提是你已经熟悉Go Template的基本用法.

    Flatten

    configSvcName: mysrv
    configSvcUrl: http://example.com
    

    Use Flatten

    name: "{{ .Values.configSvcName }}
    url: "{{ .Values.configSvcUrl }}
    

    Nested

    config:
      svc:
        name: mysrv
        url: http://example.com
    

    Use Nested

    name: "{{ .Values.config.svc.name }}"
    url: "{{ .Values.config.svc.url }}"
    移除左侧/右侧空格: -

    通过在分隔符左侧或右侧增加-, 能够起到移除左侧或右侧所有空白的效果, 例如:

    "{{23 -}} < {{- 45}}"
    

    生成的字符串是:

    23<45
    

    此外, -也可以用来减少空格浪费的空间, 例如一些带缩进的控制语句if/else/with/for等, 本身不会嵌入到最终生成的YAML中, 但我们为了查看方便, 会对其增加缩进和换行, 这些空白没有必要带进最终渲染出的YAML中:

    {{- with .Values.affinity }}
      affinity:
        {{- toYaml . | nindent 8 }}
    {{- end }}
    

    需要注意, 换行本身也是空白字符!

    管道: |

    与Linux下的命令管道类似, Go Template中同样也可以使用管道, 例如:

    {{ "abc" | upper }}
    

    生成:

    ABC
    

    转义字符串: quote

    yaml在处理数字,字符串和注释时存在微妙的变化, 为了安全的转义它们, 可以使用quote:

    {{ .Values.text | quote }}
    

    {{ quote .Values.text }}
    

    左侧增加N个空格缩进: nindent N

    由于yaml通过缩进来区分层级, 在编写Kubernetes的yaml文件时, 可以结合 - 和 nindent, 来精确的制造偏移, 防止直接编辑空格出现失误, 而肉眼难以检查.

    affinity:
      {{- toYaml . | nindent 8 }}
    

    默认值: default XXX

    drink: {{ .Values.favorite.drink | default "tea" | quote }}
    
  • 相关阅读:
    react dva routerRedux 备忘
    vue实现tab切换
    ios手机弹出层上表单的操作,收起键盘焦点错乱的问题
    FLEX布局
    new Date在ios下的兼容bug
    大数据分析如何创建最佳的移动应用用户体验
    Django适合做大用户量的系统吗?
    用 Django 管理现有数据库
    djongo:Django和MongoDB连接器
    5分钟教你学会Django系统错误监控
  • 原文地址:https://www.cnblogs.com/qianyuming/p/12773785.html
Copyright © 2011-2022 走看看