我是新来掌舵世界的。我想从我的值和 sample.yaml 生成清单,所以我尝试从我的 sample.yaml 文件创建一个模板。
值.yaml
prodapps:
alpha:
name: alpha
image: alpha.azurecr.io/alpha:latest
imagePullPolicy: IfNotPresent
resources:
requests:
memory: "10000Mi"
cpu: "150m"
limits:
memory: "800Mi"
cpu: 600m"
ingress:
enabled: true
annotations:
zap.ingress.kubernetes.io/rule-type: PathPrefixStrip
nginx.ingress.kubernetes.io/rewrite-target: /
path: /alpha/api
hosts:
- demo.jumboapps.com
beta:
name: beta
disable: true
image: beta.azurecr.io/beta:latest
imagePullPolicy: IfNotPresent
resources:
requests:
memory: "10000Mi"
cpu: "150m"
limits:
memory: "800Mi"
cpu: 600m"
ingress:
enabled: true
annotations:
zap.ingress.kubernetes.io/rule-type: PathPrefixStrip
nginx.ingress.kubernetes.io/rewrite-target: /
path: /beta/api
hosts:
- demo.jumboapps.com
示例.yaml
apiVersion: v1
kind: Service
metadata:
name: "{{ .Values.prodapps.alpha.name }}-svc"
namespace: "{{ .Release.Namespace }}"
spec:
ports:
- port: 80
name: "http"
selector:
app: "{{ .Values.prodapps.alpha.name }}"
---
apiVersion: v1
kind: Service
metadata:
name: "{{ .Values.prodapps.beta.name }}-svc"
namespace: "{{ .Release.Namespace }}"
spec:
ports:
- port: 80
name: "http"
selector:
app: "{{ .Values.prodapps.beta.name }}"
我的主要目标是模板化我的 sample.yaml.by 并生成有效的 Manifet 文件。 遵循helm文档。但是我找不到任何明智的(我可以理解的)语法来循环遍历复杂的值文件。
请任何人帮助我解决这个问题。