добавление файлов общей библиотеки в конфигурационную карту при использовании с библиотеками - PullRequest
0 голосов
/ 26 мая 2020

У меня есть общий набор файлов, который входит в конфигурационную карту из common/config-dir, и несколько файлов конфигурации c в appchart/config-dir

Я следую документации от Helm. sh для использования библиотечных диаграмм для объединения общих и специфичных c данных диаграмм. Я указываю {{ (.Files.Glob "config-dir/*").AsConfig | indent 2 }} прямо под data как в библиотечной диаграмме common, так и в appchart. Однако библиотечная диаграмма не собирает файлы config-dir из common диаграммы.

Прикрепление _configmap.yaml из common диаграммы библиотеки и configmap.yaml из диаграммы приложения.

_configmap.yaml

{{- define "common.configmap.tpl" -}}
apiVersion: v1
kind: ConfigMap
metadata:
  name: {{ .Release.Name | printf "%s-%s" .Chart.Name }}
data: 
{{ (.Files.Glob "config-dir/*").AsConfig | indent 2 }}
{{- end -}}

{{- define "common.configmap" -}}
{{- include "common.util.merge" (append . "common.configmap.tpl") -}}
{{- end -}}

configmap.yaml

{{- include "common.configmap" (list . "appchart.configmap") -}}

{{- define "appchart.configmap" -}}
data: 
{{ (.Files.Glob "config-dir/*").AsConfig | indent 2 }}
{{- end -}}

1 Ответ

0 голосов
/ 26 мая 2020

Прежде чем перейти к проблеме, каков размер этих файлов библиотеки? Существует жесткое ограничение configmap не из кубернетов, а из etcd из 1 МБ . Если размер файлов на карту конфигурации превышает 1 МБ, для этой цели следует использовать тома.

Пожалуйста, проверьте жесткие ограничения configmap. Ограничение размера Kubernetes ConfigMap

Затем вы можете запустить команду установки helm с флагом --debug и - dry -run и вставить результат.

Следующий шаг можно дополнительно go в детализацию отделить подграфик и попробовать использовать тот же шаблон и проверить его.

...