kubernetes - Slice in helm 未找到匹配项
问题描述
define
我在掌舵中有以下定义:
{{- define "svc.envVars" -}}
{{- range .Values.envVars.withSecret }}
- name: {{ .key }}
valueFrom:
secretKeyRef:
name: {{ .secretName }}
key: {{ .secretKey | quote }}
{{- end }}
{{- range .Values.envVars.withoutSecret }}
- name: {{ .name }}
value: {{ .value | quote }}
{{- end }}
{{- end }}
我将使用它deployment.yaml
containers:
- name: {{ .Release.Name }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
{{- if .Values.envVars.enabled }}
env:
{{- include "svc.envVars" . | indent 10 }}
{{- end }}
ports:
- name: http
containerPort: 8080
protocol: TCP
livenessProbe:
httpGet:
path: /
port: http
readinessProbe:
httpGet:
path: /
port: http
resources:
{{- toYaml .Values.resources | nindent 12 }}
其中values.yaml
定义如下:
envVars:
enabled: false
withSecret: []
withoutSecret: []
然后我尝试渲染:
helm template --debug user-svc \
--set image.tag=0.1.0 \
--set image.repository=user-svc \
--set envVars.enabled=true \
--set envVars.withSecret[0].key=POSTGRES_URL,envVars.withSecret[0].secretName=postgres_name,envVars.withSecret[0].secretKey=postgres_pw \
--set envVars.withSecret[1].key=MYSQL_URL,envVars.withSecret[1].secretName=mysql_name,envVars.withSecret[1].secretKey=mysql_pw \
./svc
它向我展示了:
zsh: no matches found: envVars.withSecret[0].key=POSTGRES_URL,envVars.withSecret[0].secretName=postgres_name,envVars.withSecret[0].secretKey=postgres_pw
当我手动设置变量时values.yaml
:
envVars:
enabled: false
withSecret:
- key: POSTGRES_URL
secretName: postgres_name
secretKey: postgres_pw
- key: MYSQL_URL
secretName: mysql_name
secretKey: mysql_pw
withoutSecret:
- name: NOT_SECRET
value: "Value of not serect"
然后渲染它:
helm template --debug user-svc \
--set image.tag=0.1.0 \
--set image.repository=user-svc \
--set envVars.enabled=true \
./svc
然后它按预期工作。
我究竟做错了什么?
解决方案
推荐阅读
- python - 为什么我的 Python 函数不会将所有数据传递给下一个 Python 函数
- python - SqlAlchemy:在 filter() 中应用拆分
- dpdk - dpdk 文件 rte_build_config.h 在哪里?
- c# - 如何在 C# 中使用正文发出 HTTPPost 请求
- reactjs - React-Table V7 useSortBy Hook 无法正常工作
- css - 柔性窗格超过 100% 高度
- vba - 搜索整个句子
- javascript - 如何通过检查不在来自ajax的json响应中的选项值来将文本附加到选项?
- python - python新手,在matplotlib中获取ValueError
- java - Flutter - 无法在本机代码中访问侦听器