掌舵:从键可变的地图中获取价值

时间:2020-01-14 13:16:11

标签: kubernetes-helm

我有如下舵图

dns_entries:
  cluster1: xx.xx.xx.xx
  cluster2: xx.xx.xx.xx

在安装头盔图表时,还将动态设置集群值。在模板中,我需要从上面的地图中动态选择它

{{- if hasKey .Values.dns_entries .Values.clusterId }}
  clusterIP: {{ .Values.dns_entries.{{ .Values.clusterId }} }}
  {{- end }}

我该如何正确实现以上内容?

谢谢!

2 个答案:

答案 0 :(得分:1)

我发现我需要使用内置函数遍历地图。

{{- if hasKey .Values.dns_entries .Values.clusterId }}
{{- range $key, $value := .Values.dns_entries }}
  {{- if eq $key .Values.clusterId }}
  clusterIP: $value
  {{- end }}
  {{- end }}
{{- end }}

答案 1 :(得分:0)

https://helm.sh/docs/chart_template_guide/function_list/

<块引用>

get

给定一个映射和一个键,从映射中获取值。

<块引用>

get $myDict "key1"

get .Values.dns_entries .Values.clusterId