ogb*_*jnr 2 yaml kubernetes-helm
我遇到了以下几行 Helm 图表示例之一:
{{- define "common.deployment" -}}
{{- $common := dict "Values" .Values.common -}}
{{- $noCommon := omit .Values "common" -}}
{{- $overrides := dict "Values" $noCommon -}}
{{- $noValues := omit . "Values" -}}
{{- with merge $noValues $overrides $common -}}
Run Code Online (Sandbox Code Playgroud)
但是我在 helm 文档中找不到有关 omit、merge 和 dict 指令的信息。
创建字典是通过调用dict函数并向它传递一个对列表来完成的。
下面创建一个包含三个项目的字典:
$myDict := dict "name1" "value1" "name2" "value2" "name3" "value 3"
Run Code Online (Sandbox Code Playgroud)
将两个或多个字典合并为一个,优先使用 dest 字典:
$newdict := merge $dest $source1 $source2
Run Code Online (Sandbox Code Playgroud)
这是深度合并操作,但不是深度复制操作。合并的嵌套对象在两个字典上是相同的实例。如果您想要与合并一起进行深层复制,请将该deepCopy功能与合并一起使用。例如,
deepCopy $source | merge $dest
Run Code Online (Sandbox Code Playgroud)
mustMerge 如果合并失败,将返回错误。
该omit函数类似于pick,不同之处在于它返回一个新的,dict其中包含与给定键不匹配的所有键。
$new := omit $myDict "name1" "name3"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8639 次 |
| 最近记录: |