Шлем: разбить l oop (диапазон) в шаблоне - PullRequest
0 голосов
/ 01 апреля 2020

У меня есть приложение, которое размещено в нескольких средах, и для развертывания приложения используется диаграмма руля. У меня есть values.yaml-

app:
  component: mobile
  type: web 
  env: prd --> (It will override with external parameters while deployment like dev / stg / uat)


image:
  repository: ********.dkr.ecr.ap-south-1.amazonaws.com/mobile
  pullPolicy: IfNotPresent
  versions:
    v1:
      name: stable
      replicaCount: 2
      tag: latest
    v2:
      name: release
      replicaCount: 1
      tag: latest

На основе версий v1 и v2 (канарейка), развертывание будет повторяться по l oop. Развертывание Canary будет осуществляться только в среде PRD. Таким образом, в DEV / STG / UAT будет развернута только одна версия, и поэтому потребуется l oop, чтобы выполнить итерацию только один раз для такой среды.

{{- range $version, $val := $.Values.image.versions }}
---
apiVersion: apps/v1
kind: Deployment

Я могу установить количество необходимых модулей для v2 как 0 но это создает ненужные метаданные (deployemnt, replicaset).

Итак, есть ли способ разбить l oop в шаблоне helm с условием (env: prd), чтобы избежать итерации l oop над v2.

...