kubernetes-helm - 如何将“范围”与存储在我的 Helm 图表的 configMap 中的数组一起使用
问题描述
我正在尝试将我的配置存储在 configMap 中:
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ .Release.Name }}-{{ .Chart.Name }}-config
namespace: {{ .Values.global.config.namespace }}
data:
QueryInterval: {{ .Values.queryEngineServiceOptions.queryInterval | quote }}
AllowedSymbols: {{ .Values.queryEngineServiceOptions.allowedSymbols }}
我的 configMap 中的数据成功来自我的值文件:
queryengine:
queryEngineServiceOptions:
queryInterval: 15000
allowedSymbols:
0: pi
1: upsilon
2: gamma
3: beta
在我的deployment.yaml
清单文件中,我试图转换此部分,以便它不使用值文件,而是使用 configMap:
env:
{{- range $k, $v := .Values.queryEngineServiceOptions.allowedSymbols }}
- name: {{ printf "QueryEngineServiceOptions__AllowedSymbolsList__%s" $k }}
value: {{ $v | upper -}}
{{ end }}
如果您不处理数组,并且可能正在尝试提取单个值,则可以使用 valueFrom 执行此操作:
env:
- name: QueryIntervalSetting
valueFrom:
configMapKeyRef:
name: {{ .Release.Name }}-{{ .Chart.Name }}-config
key: QueryInterval
有没有办法将来自 configMap 数组/映射(可能使用 valueFrom?)的值与范围操作结合起来?
目前,我的所有单值设置都来自我的 configMap,而我的数组/映射值来自值文件。理想情况下,我希望我的所有配置都存储在我的 configMap 中。
解决方案
推荐阅读
- android - Glide 没有将“joeschmoe”头像加载到 ImageView 中
- git - Git 有一些很重的文件,我想清理一下
- python - 如何使用 python selenium 点击第一个谷歌搜索结果?
- java - gson : 将空字符串视为 null
- javascript - JS函数设置addEventListeners太多
- swift - 如何在 swift mac 应用程序中订阅全局触控板触摸事件?
- python - python中的变量扩展可以像变量的shell扩展一样工作吗
- django - 带有多个外键表单的页面
- excel - 我做了一个子函数但得到一个错误,怎么了?
- asp.net - 选中复选框时,ASP.Net onclick 未触发