如何将“范围”与存储在 configMap 中的数组一起用于我的 Helm Chart

问题描述

我正在尝试将我的配置存储在 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 中。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)