如何在不迭代的情况下使用变量键查找地图的值?
因此,可以在变量映射$ x上查找常量键$x.key1,但是可以amap.$key吗?
说我有这些价值观
grafana:
...
ingress:
enabled: true
annotations: {}
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
hosts:
- host: chart-example.local
paths: ["/grafana"]
Run Code Online (Sandbox Code Playgroud)
这是标准的头盔。出于这个原因,我想保留hosts为一个数组(即使它使接下来的移动有点棘手)。我怎样才能获得第一个.host(我不介意任何可能的其他)才能使env.value动态
containers:
- name: {{ .Chart.Name }}-grafana
env:
- name: GF_DOMAIN
value: chart-example.local
Run Code Online (Sandbox Code Playgroud)
我试过
env:
- name: GF_DOMAIN
{{- range .Values.grafana.ingress.hosts }}
value: {{ .host }}
{{- end }}
Run Code Online (Sandbox Code Playgroud)
env:
{{- range .Values.grafana.ingress.hosts }}
- name: GF_DOMAIN
value: {{ .host }}
{{- end }}
Run Code Online (Sandbox Code Playgroud)
按照这个建议,我也尝试过
env:
{{- with .Values.grafana.ingress.hosts 0}} …Run Code Online (Sandbox Code Playgroud) 我有一个舵图如下
dns_entries:
cluster1: xx.xx.xx.xx
cluster2: xx.xx.xx.xx
Run Code Online (Sandbox Code Playgroud)
安装 Helm Chart 时也会动态设置集群值。在模板中,我需要从上面的地图中动态选择它
{{- if hasKey .Values.dns_entries .Values.clusterId }}
clusterIP: {{ .Values.dns_entries.{{ .Values.clusterId }} }}
{{- end }}
Run Code Online (Sandbox Code Playgroud)
我怎样才能正确实施上述内容?
谢谢!