来自 yml 文件的 Helm Chart 配置图

Helm Chart configmap from yml file

我在 helm 中创建了 ConfigMap

apiVersion: v1
kind: ConfigMap
metadata:
  name: test
data: 
    {{- $root := . -}}
    {{- range $path, $bytes := .Files.Glob "*.yml"}}
    {{ $path }}: '{{ $root.Files.Get $path }}'
    {{- end }}

当我 运行 kubectl 获取配置映射时,yml 文件格式更改为另一种文件格式,在 yml 文件中添加“\”。如何防止 helm 更改文件格式?

apiVersion: v1
kind: ConfigMap
metadata:
  name: test
data: 
    {{- $root := . -}}
    {{- range $path, $bytes := .Files.Glob "*.yml"}}
    {{- $value := $root.Files.Get $path -}}
    {{- printf "\n" | nindent 2 -}}
    {{ $path | nindent 2 }}: {{- toYaml $value | nindent 4 }}
    {{- end }}

你可以使用类似上面的东西。

我做了什么:

  • 将文件内容保存在$value变量中。
  • 稍后将 $value 变量传递给 toYaml 函数和 nindent 与 4
  • 使用toYaml模板函数,helm不会改变文件内容。