我需要遍历实例列表并为每个实例创建 1 个有状态集。但是,在范围内,我将自己限制在该循环的范围内。我需要访问我的 statefulset 中的一些全局值。
我已经通过将我需要的所有全局对象放在一个 env 变量中来解决它,但是......这看起来很hacky。
在仍然能够引用全局对象的同时循环遍历范围的正确方法是什么?
我的循环示例
{{- $values := .Values -}}
{{- $release := .Release -}}
{{- range .Values.nodes }}
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: {{ $release.Name }} <-- Global Scope
labels:
.
.
.
env:
- name: IP_ADDRESS
value: {{ .ip_address }} <-- From range scope
.
.
.
{{- end }}
Run Code Online (Sandbox Code Playgroud)
值示例
# Global
image:
repository: ..ecr.....
# Instances
nodes:
- node1:
name: node-1
iP: 1.1.1.1
- node2:
name: node-2
iP: …Run Code Online (Sandbox Code Playgroud)