问题标签 [sprig-template-functions]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
20165 浏览

sprig-template-functions - go-template 按分隔符拆分字符串

我有自己的舵图,我正在尝试在不使用_helpers.tplin 一行的情况下执行拆分

我的values.yaml文件内容:

我需要在我的模板文件中拆分域名:my.domain

我尝试使用以下语法来执行此操作:

或者

但没有任何效果

我试图在我的模板文件中得到以下结果:

0 投票
1 回答
2778 浏览

kubernetes - 为 helm 模板中的每个列表成员添加后缀

我正在尝试遍历 helm 模板中的列表,并为每个成员添加一个后缀。我目前有这段代码可以做到这一点:

由于我需要在同一个文件中进行两次完全相同的操作,因此我想创建一个名为 的新列表,$host-with-env其中将包含我要查找的后缀。这样我只能执行一次此操作。
问题是 - 我不知道如何在 helm 中创建一个空列表 - 所以我无法将现有列表中的项目附加到新列表中。
知道如何实现这一目标吗?
我也可以更改现有列表,但我应用于列表的每个操作似乎都适用于我应用于它的 foreach 的范围。任何想法如何去做?

0 投票
1 回答
4729 浏览

go - 将两个 if 条件合二为一

以下作品

而以下失败并出现“运行时错误:无效的内存地址或零指针取消引用”

在 $envAll.Values.policy 下没有声明名称为“类型”的列表。

在 Go 中,如果有条件地评估正确的操作数,为什么在第二个代码片段中评估最后一个条件?我该如何解决?

编辑(因为它被标记为重复):不幸的是,我不能像另一篇文章中提到的那样使用嵌入式 {{ if }}。

我在上面简化了我的问题。我实际上必须实现这一目标......

0 投票
1 回答
8569 浏览

go - 带舵的尺码表

简单的问题是否可以使用 helm 和 sprig 函数获取大小列表?

我的列表 :

我试过这样:

0 投票
1 回答
2905 浏览

regex - Helm 正则表达式匹配从开始到最后一个字符出现

努力使用 Helm 来匹配单词从它的开头到最后一次出现的-.

我试过{{- printf "%s" .Release.Name | regexFind "[^-]*$" -}}了,但它从最后一次出现到单词的结尾打印。

预期的

输入:hello-world-here=> 输出:hello-world

输入:hello-world-here-and-there=> 输出:hello-world-here-and

0 投票
1 回答
2915 浏览

json - Helm3 - 将 json 文件读入 configmap 会产生一个字符串?

问题:

我想将一个 json 文件读入一个配置映射,所以它看起来像:

相反,我得到

我做了什么:

我有以下掌舵图:

static/ 包含一个文件test.json::

templates/ 包含一个读取 test.json: 的配置映射test.yml

当我运行时,helm install test . --dry-run --debug我得到以下输出

这里的问题是我的 json 用双引号括起来。我想要读取 json 的过程需要实际的 json,而不是字符串。

0 投票
3 回答
2123 浏览

kubernetes-helm - 将 yaml 转换为 helm 模板中的属性文件

我想将 values.yaml 中的一部分结构转换为配置映射中的属性文件。

是否可以转换 yaml 结构,例如:

进入

使用 Helm 模板功能?

0 投票
1 回答
228 浏览

kubernetes-helm - 确保 Go 模板中的路径始终以斜杠结尾

我正在为一堆部署编写 Helm 图表。我提供的值可以是:

my_value: "/opt/my-path"或者my_value: "/opt/my-path/"

现在我想确保/在路径的尽头总是有一个。

我如何使用Go模板来做到这一点?

0 投票
1 回答
4061 浏览

go - 如何在 Helm 图表中将变量值传递给 .Files.Glob?

下面的调用.Files.Glob需要来自作为来自的值提供的变量.Values.initDBFilesGlob。该值已正确设置,但if条件未评估为真,即使.Values.initDBConfigMap为空。

如何将变量参数传递给.Files.Glob

有问题的模板(templates/initdb-configmap.yaml来自我的 WIP 图表https://github.com/northscaler/charts/tree/support-env-specific-init/bitnami/cassandra,我将提交给https://github.com/bitnami/charts /tree/master/bitnami/cassandra作为 PR 一旦这个被修复):

文件values.yaml

命令: helm template -f values.yaml foobar /Users/matthewadams/dev/bitnami/charts/bitnami/cassandra

有文件files/devops/docker-entrypoint-initdb.d,相对于我从中调用命令的目录。

输出:

values.yaml如果我在that sets中注释掉该行initDBFilesGlob,则模板将正确呈现:

0 投票
1 回答
2005 浏览

kubernetes-helm - Helm v3 中 .Release.Time 的替代方案

由于 Helm v3 内置对象.Release.Time 被移除

现在将发布时间注入模板的首选方式是什么?