小编Don*_*nat的帖子

helm - 如何使用复杂值迭代地图

在舵图中想要迭代包含结构化值的地图。

我确实知道如何使用简单的字符串值迭代地图。我还可以迭代包含结构化值的数组(此处未显示)。但我没有设法迭代包含结构化值的映射。

这是我的目录结构,包含 3 个文件:

templates/test.yaml
Chart.yaml
values.yaml
Run Code Online (Sandbox Code Playgroud)

一个简单的文件 Chart.yaml (仅用于完成展示):

templates/test.yaml
Chart.yaml
values.yaml
Run Code Online (Sandbox Code Playgroud)

文件values.yaml,其中包含一个包含简单字符串值(标签)和一个包含结构化值(标签1)的映射:

---
apiVersion: v1
appVersion: "1.0"
description: A Helm chart for Kubernetes
name: foochart
version: 0.1.0
Run Code Online (Sandbox Code Playgroud)

这个模板 test.yaml 的工作原理:

---
label:
  fook: foo
  bark: bar
label1:
  fook:
    name: foo
    value: foo1
  bark:
    name: bar
    value: bar2
Run Code Online (Sandbox Code Playgroud)

但是当我替换.Values.label为时.Values.label1,它不会产生任何输出。

这是我的测试命令:

---
env:
  {{- range $k, $v := .Values.label }}
  - name: {{ $k }}
    value: {{ $v }}
  {{- end }}
Run Code Online (Sandbox Code Playgroud)

问题:是否可以处理具有结构化值的地图?我想用类似的东西$v.name。如果是,我该怎么做?

kubernetes-helm

24
推荐指数
1
解决办法
5万
查看次数

标签 统计

kubernetes-helm ×1