我想将数组作为 Helm 中 yaml(值文件)中的属性传递。我尝试过的:
-
Attempt.
elasticsearch:
uri: "[\"127.0.0.1:9200\",\"127.0.0.2:9200\"]"
Error:
ReadString:期望“或n,但发现[,在#10字节中发现错误
...|RCH_URL":["127.0.0.1|...,更大的上下文
...|{"apiVersion":"v1","data":{"ELASTIC_SEARCH_URL": ["127.0.0.1:9200","127.0.0.2:9200"],"LOGS_ENV_PREFI|...
-
试图。根据官方掌舵网站 https://github.com/helm/helm/issues/1987如何传递数组
elasticsearch:
--set uri={127.0.0.1:9200,127.0.0.2:9200}
有错误:
将 YAML 转换为 JSON 时出错:yaml:第 15 行:映射值不是
在这种情况下允许
-
Attempt.
elasticsearch:
uri:
- 127.0.0.1:9200
- 127.0.0.2:9200
失败,但出现与 1 相同的异常。
编辑:
实际上,在我的情况下,当时 YAML 文件中没有使用 helm 值,因此我需要另一种格式,最后的解决方案是将 uri 作为带单引号的字符串传递:
elasticsearch:
uri: '["127.0.0.1:9200","127.0.0.2:9200"]'
尽管如此,@Marcin 的答案是正确的。
您可以使用老式的 json 方式传递值数组:
elasticsearch:
uri: ["127.0.0.1:9200", "127.0.0.2:9200"]
或者yaml引入的方式:
elasticsearch:
uri:
- 127.0.0.1:9200
- 127.0.0.2:9200
然后,您可以使用 Helm 模板访问值range
:
Uris:{{- range .Values.elasticsearch.uri }}
{{.}}{{- end }}
决定:
Uris:
127.0.0.1:9200
127.0.0.2:9200
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)