美文网首页
helm-chart6,子chart 和全局值

helm-chart6,子chart 和全局值

作者: 名白 | 来源:发表于2018-08-27 09:08 被阅读0次

chart可以有称为子chart的依赖关系

关于子chart

1,子chart认为是“独立的”,即子chart不能明确依赖于其父chart。
2,子chart无法访问其父项的值。
3,父chart可以覆盖子chart的值。
4,Helm有全局值的概念,可以被所有chart访问。

创建一个空的子chart

$ cd mychart/charts
$ helm create mysubchart
Creating mysubchart
$ rm -rf mysubchart/templates/*.*

添加一个configmap:mychart/charts/mysubchart/templates/configmap.yaml

apiVersion: v1
kind: ConfigMap
metadata:
  name: {{ .Release.Name }}-cfgmap2
data:
  dessert: {{ .Values.dessert }}

独立测试这个子chart:

$ helm install --dry-run --debug mychart/charts/mysubchart
SERVER: "localhost:44134"
CHART PATH: /Users/mattbutcher/Code/Go/src/k8s.io/helm/_scratch/mychart/charts/mysubchart
NAME:   newbie-elk
TARGET NAMESPACE:   default
CHART:  mysubchart 0.1.0
MANIFEST:
---
# Source: mysubchart/templates/configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
  name: newbie-elk-cfgmap2
data:
  dessert: cake

一切正常。

覆盖子chart值

要覆盖子chart中的值,可以在父chart 的values.yaml文件中这样写:

favorite:
  drink: coffee
  food: pizza
pizzaToppings:
  - mushrooms
  - cheese
  - peppers
  - onions
  
mysubchart:  # 注意此处名称
  dessert: ice cream

再次测试子chart ,则其值已经改变。

data:
    dessert: ice cream

全局chart值

全局值是可以从任何chart或子chart用完全相同的名称访问的值。全局值需要明确声明。

全局值的声明方式:

favorite:
  drink: coffee
  food: pizza
pizzaToppings:
  - mushrooms
  - cheese
  - peppers
  - onions

mysubchart:
  dessert: ice cream

global:
  salad: caesar

这样,则mychart/templates/configmap.yaml和mysubchart/templates/configmap.yaml都能够这样访问该值{{ .Values.global.salad}}。

此外,父chart和子chart可以共享模板。任何chart中的任何定义块都可用于其他chart。

相关文章

  • helm-chart6,子chart 和全局值

    chart可以有称为子chart的依赖关系 关于子chart 创建一个空的子chart 添加一个configmap...

  • chart.js学习

    第一步:引入chart.js文件。此工具库在全局命名空间中定义了chart变量。 chart.js文件下载Rele...

  • vue

    全局组件注册局部组件注册父向子传递值子向父传递值动态组件slot内容分发$refs & refdata数据声明 s...

  • 2018-07-26

    vue组件相关练习1、设计组件定义、分类(全局、局部组件)、2、组件传值、父传值给子组件,用props参数接收子传...

  • Vue-TodoList组件化思维

    一、全局组件化 二、局部组件化 三、子组件给父组件传值

  • 内置对象的分类以及概念理解

    值属性 这些全局属性返回一个简单值,这些值没有自己的属性和方法。 Infinity 全局属性Infinity是一个...

  • web前端开发中遇到的问题整理记录——2019-05

    目录 小程序中,子页面传值给父页面的方法 正文 1. 小程序中,子页面传值给父页面的方法 A 使用全局数据存储将要...

  • 卡顿优化

    分析工具有Call Chart 和 Flame Chart 两种展示方式:

  • 第二节:var、let、const之间的区别

    var:全局声明,会改变全局变量的值,进而污染全局变量 let:局部声明,不会改变全局变量的值 const:常量,...

  • (25)打鸡儿教你Vue.js

    vue-cli 父组件如何向子组件传值呢?通过属性的形式传值 父组件: 声明 删除 全局样式与局部样式 scope...

网友评论

      本文标题:helm-chart6,子chart 和全局值

      本文链接:https://www.haomeiwen.com/subject/wfqjmftx.html