我的values. yaml文件中有一个json编码的字符串-〉
- 值. yaml**
network:
cidrs : "[\"123.123.123.123/32\",\"123.124.125.125/32\"]"
现在,我想在我的网络策略出口ipblock中使用这个值作为一个字符串列表,但是我不能把它转换成列表。
目前,我正在按照这个来达到要求,但它失败了-
将YAML转换为JSON时出错:yaml:第xx行:找不到预期的键
- netpol. yaml**
spec:
podSelector:
matchLabels:
name: log-forwarder
policyTypes:
- Egress
egress:
{{- $json := .Values.network.cidrs | fromJson -}}
{{- range $json }}
- to:
- ipBlock:
cidr: {{- . }}
{{- end }}
ports:
- protocol: TCP
port: 443
任何想法,如何转换编码字符串列表的字符串和使用它在我的网络策略?
1条答案
按热度按时间unftdfkk1#
使用
mustFromJson
而不是fromJson
,最近也有同样的问题,现在已经解决了,我会在文档中查看一下,看看是否能找到原因。编辑:由于某种原因,
fromJson
无法处理顶级列表,但mustFromJson
可以,看起来像是一个bug,因为文档中列出的唯一区别是mustFromJson
在JSON无效的情况下返回错误。源