Итак, я получил переменную окружения в своей диаграмме Хелма, которая отлично работает, когда я запускаю --dry-run
. Однако, когда я пытаюсь выпустить его по-настоящему, выдается ошибка.
Поскольку количество узлов Postgres различается в зависимости от введенных пользователем значений. Yaml Мне нужен способ создания переменной узлов-партнеров на основе указанного количества узлов.
То, что я пытался сделать, - это создать цикл, который перебирает числа, используя функцию until
, которая возвращает список целых чисел, начинающихся с 0 и заканчивающихся $ до -1, где я даю значение postgres_nodes в качестве входного числа, например, так :
- name: "PARTNER_NODES"
value: "{{ range $i, $e := until ( int $.Values.postgres_nodes ) }}{{ if $i }},{{ end }}{{ $.Values.name }}-db-node-{{ $i }}.{{ $.Values.name }}-db{{ end }}"
При запуске как helm install --dry-run --debug
он работает нормально и файл конфигурации печатается правильно:
"xxx-db-node-0.xxx-db,xxx-db-node-1.xxx-db,xxx-db-node-2.xxx-db"
но когда я удаляю --dry-run
, чтобы развернуть его по-настоящему, выдается следующее сообщение об ошибке:
Error: release ha-postgres failed: StatefulSet in version "v1beta1" cannot be handled as a StatefulSet: v1beta1.StatefulSet.Spec: v1beta1.StatefulSetSpec.Replicas: readUint32: unexpected character: �, error found in #10 byte of ...|eplicas":"3","servic|..., bigger context ...|-node","namespace":"default"},"spec":{"replicas":"3","serviceName":"boost-db","template":{"metadata"|...
Любая помощь будет высоко ценится, и заранее спасибо.