ссылка на текущий контекст куба в шаблоне рулевой диаграммы - PullRequest
0 голосов
/ 23 мая 2019

Немного начинающего руля, короче говоря, я хочу сослаться на текущий контекст Kubernetes в своем шаблоне рулевой диаграммы. Это возможно? Пример:

если обновление было запущено через:

/var/jenkins_home/helm291 upgrade -i --kube-context Dev

И шаблон содержал развертывание. Yaml со следующим:

...
spec:
  containers:
    - name: {{ .Chart.Name }}
      image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
      env:
      {{- if contains "Dev" .Release.Kube_Context}}

Есть ли какая-то переменная, которую мне не хватает, которая может проверить контекст Kube (он же заменить Release.Kube_Context)? Неправильно ли я подхожу к этому (указав конфигурацию среды)?

Ответы [ 2 ]

2 голосов
/ 23 мая 2019

Нет никакого способа сделать это, и это также плохая практика делать это в шаблонах. Шаблоны должны быть общими - вы изменяете специфические для среды вещи в файлах values.yaml. Вместо этого вы можете использовать флаг --kube-context, если вы запускаете его из Jenkins

2 голосов
/ 23 мая 2019

Вы можете экспортировать нужные значения контекста, а затем выполнить helm, чтобы они были доступны в виде переменных среды.

Например, если вам нужен токен доступа:

export TOKEN=$(kubectl config view -o jsonpath='{.users[?(@.name == "dev-user")].user.auth-provider.config.id-token}'); /var/jenkins_home/helm291 upgrade -i --kube-context Dev

...