-1

我是一个非常初学者,所以也许这是一个非常微不足道的问题。我使用需要 yaml 文件进行配置的收费。我在 yaml 文件中使用了一些变量,该变量来自 values .yaml 文件。当我尝试使用 helm install 时出现问题,因为它说:'错误:无法解码“”:对象'Kind'丢失'。我认为它试图用作 kubernetes yaml 文件。如何跳过此文件以不用作 kubernetes 配置但包含在包中,因为它在秘密文件中使用:'{{.Files.Get "config.yaml" | b64enc}}'。

4

1 回答 1

4

图表内的任何内容templates/都被 helm 解释为 k8s 资源。尝试将您的静态非 k8s 文件放在另一个路径下,例如files/service/config.yaml. 然后你可以用{{.Files.Get "files/service/config.yaml" | b64enc}}它把它放在你的秘密地图中。

如果您想在该文件中使用模板,您必须采取另一种方法并将其放在 下templates/,但通过以下方式将其定义在块内{{- define "my_custom_block" -}}

模板/服务/config.yaml:

{{- define "my_conf" -}}

Content ..

{{- end -}}

模板/secret.yaml:

---
apiVersion: v1
kind: Secret
metadata:
  name: secret-map
type: Opaque
data:
  config.yaml: |
{{ include "my_conf" . | b64enc | indent 4 }}

这里有一些关于声明的文档。include

于 2017-08-28T08:44:23.683 回答