helmfile.yaml 1.2 KB
environments:
  default:
    values:
      - namespace: istio-system
        namePrefix: ""
        gateways: []

repositories:
  - name: istio
    url: https://istio-release.storage.googleapis.com/charts

---
helmfiles:
  - path: istio-base.helmfile.yaml
    values:
      - namespace: {{ .Values.namespace }}
        namePrefix: ""
  - path: istiod.helmfile.yaml
    values:
      - namespace: {{ .Values.namespace }}
        namePrefix: ""

releases:
{{- range $gateway_index, $gateway := .Values.gateways }}
  - name: {{ $.Values.namePrefix }}gateway-{{ $gateway.name }}
    namespace: {{ $gateway | get "namespace" "istio-system" }}
    chart: istio/gateway
    values:
      - service:
          type: LoadBalancer
          loadBalancerIP: {{ $gateway | get "loadBalancerIP" "" }}
          externalTrafficPolicy: Cluster
          ports:
            - name: status-port
              port: 15021
              protocol: TCP
              targetPort: 15021
            - name: http2
              port: 80
              protocol: TCP
              targetPort: 80
            - name: https
              port: 443
              protocol: TCP
              targetPort: 443
        name: {{ $gateway.name }}
{{- end }}