Сделайте так, чтобы Helm переопределял измененные вручную переменные окружения - PullRequest
0 голосов
/ 24 сентября 2019

Используя шаблон Helm, я могу указать переменные среды развертывания.

Однако, если переменная среды будет изменена вручную через веб-консоль Openshift, она будет игнорироваться Helm при обновлении, даже если изменяется код шаблона.

Используемая мной команда:

helm upgrade --install --force --debug app .

templates / deploy.yaml

apiVersion: extensions/v1beta1
kind: Deployment
spec:
  template:
    spec:
      containers:
      - name: app
        image: app:latest
        env:
          - name: ENV
            value: {{ Values.env }}

values.yaml

env: dev

Как заставить Helm всегда переопределять переменные среды при обновлении?

1 Ответ

0 голосов
/ 25 сентября 2019

Чтобы настроить значения диаграммы, вы можете использовать:

  • --values / -f для передачи настроек хранения файла yaml,
  • --set для предоставления одногоили больше пар ключ = val,
  • --set-string, чтобы обеспечить ключ = значение val, сохраняемое как строка,
  • --set-file, чтобы предоставить ключ = путь для чтения одного большогозначение из файла по пути.

Чтобы отредактировать или добавить существующие настраиваемые значения, добавьте флаг --reuse-values, в противном случае любые существующие настраиваемые значения игнорируются.

В вашем случаеВы можете экспортировать переменную и использовать ее во время обновления helm:

$ export ENV=change

Можно легко переопределить переменную, добавив флаг --set в вызове обновления helm:

$ helm upgrade --set env=$ENV ./mychart
*Флаг 1027 *--set имеет более высокий приоритет, чем файл values.yaml по умолчанию.

Я рекомендую вам прочитать больше о флагах обновления helm из следующих документов и статьи .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...