作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在阅读 helm 的文档,并且点 (.) 至少有 3 种不同的用途,是否有任何具体定义?它与 bash 使用(实际文件夹/文件)有什么共同之处吗?
文档中的一些案例
这会打印之前调用的范围内的访问文件吗?
{{- $files := .Files }}
{{- range tuple "config1.toml" "config2.toml" "config3.toml" }}
{{ . }}: |-
{{ $files.Get . }}
{{- end }}
{{ include "mychart.app" . | indent 4 }}
{{- define "read.select-annot" -}}
{{- range $key, $value := . }}
{{ $key }}: {{ $value }}
{{- end }}
{{- end }}
最佳答案
一般来说,.
在 Helm 模板中与文件或目录无关。
Helm 模板语言使用 Go 的 text/template系统。句点字符可以通过几种不同的方式出现在那里。
首先,.
可以是字符串中的一个字符:
{{- range tuple "config1.toml" "config2.toml" "config3.toml" }}
{{/* ^^^^^^^^^^^^
this is a literal string "config1.toml" */}}
...
{{- end }}
.
可以是查找运算符。您的问题中没有任何可靠的示例,但典型的用途是查找值。如果您的
values.yaml
文件有
root:
key: value
{{ .Values.root.key }}
.
之前
root
和
key
在字典结构中向下导航一级。
.
本身就是一个变量。
{{ . }}
.Files
与
index . "Files"
相同,并在对象上查找字段"file"
.
.
.
在几个地方作为变量:
{{- $files := .Files }} {{/* Get "Files" from . */}}
{{ . }} {{/* Write . as a value */}}
{{ include "mychart.app" . }} {{/* Pass . as the template parameter */}}
.
很棘手,因为它具有一定的上下文含义:
.
to an object带 key Files
, Release
, Values
, 和 Chart
. define
d 模板,.
是模板的参数。 (因此,当您 include
或 template
时,您需要将 .
作为该参数向下传递。) range
循环,.
是正在迭代的当前项目。 with
块,.
是匹配项(如果存在)。 range
的互动可能很棘手。让我们看一下循环的简化版本:
# {{ . }}
{{- range tuple "config1.toml" "config2.toml" "config3.toml" }}
- {{ . }}
{{- end }}
range
循环,
.
可能是顶级 Helm 对象。但是里面
range
循环,
.
是文件名(依次来自
tuple
的每个值)。这就是您需要保存来自
.
的值的地方进入局部变量:
{{/* We're about to invalidate ., so save .Files into a variable. */}}
{{- $files := .Files }}
{{- range tuple "config1.toml" "config2.toml" "config3.toml" }}
{{/* This . is the filename from the "tuple" call */}}
{{ . }}: |-
{{/* Call .Get, from the saved $files, passing the filename .
as the parameter */}}
{{ $files.Get . }}
{{- end }}
关于kubernetes - Helm 图中的点 "."是什么,以及哪些用例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62472224/
我最近购买了《C 编程语言》并尝试了 Ex 1-8这是代码 #include #include #include /* * */ int main() { int nl,nt,nb;
早上好!我有一个变量“var”,可能为 0。我检查该变量是否为空,如果不是,我将该变量保存在 php session 中,然后调用另一个页面。在这个新页面中,我检查我创建的 session 是否为空,
我正在努力完成 Learn Python the Hard Way ex.25,但我无法理解某些事情。这是脚本: def break_words(stuff): """this functio
我是一名优秀的程序员,十分优秀!