将yaml(作为数据)放入配置映射中



有没有办法将yaml数据存储在配置映射中?

在我的values.yaml中,我有类似以下的东西

config:
filters:
- kind: Pod
apiVersion: v1
...

在我的配置图中,我目前正在进行

...
data:
config.yaml: |-
{{ .Values.config }}

但是在得到的CCD_ 2中;内联的";并格式化为这个

...
data:
config.yaml: >-
map[filters:[map[apiVersion:v1...

它不是yaml,因此读取它的应用程序无法解析。

假设您有一个demo-chart:

.
└── demo
├── charts
├── Chart.yaml
├── templates
│   ├── configmap.yaml
│   ├── _helpers.tpl
│   └── NOTES.txt
└── values.yaml

值。yaml:

config:
filters:
- kind: Pod
apiVersion: v1

configmap.yaml:

{{- if .Values.config }}
apiVersion: v1
kind: ConfigMap
metadata:
name: demo-name
data:
config.yml: |- {{- toYaml .Values.config | nindent 4 }}
{{- end }}

解释:toYaml解析从values.yaml加载到yaml的数据,nindent在每行前面放4个空格。

检查:

$ helm template demo
---
# Source: demo/templates/configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: demo-name
data:
config.yml: |-
filters:
- apiVersion: v1
kind: Pod

这更多的是猜测而不是答案,但你试过了吗:

data:
config.yaml: |-
config:
filters:
- kind: Pod
apiVersion: v1

在一个yaml中CCD_ 7和CCD_。

相关内容

  • 没有找到相关文章

最新更新