flux-charts/base/templates/release.yaml

40 lines
1.3 KiB
YAML

{{- range $name, $config := .Values.components }}
{{- if $config.enabled }}
{{- $name = $config.name | default $name }}
---
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
name: "{{ $.Release.Name }}-{{ $name }}"
spec:
chart:
spec:
sourceRef:
{{- toYaml $.Values.commons.helm.chart.sourceRef | nindent 8 }}
chart: "./{{ $name }}"
reconcileStrategy: "Revision"
releaseName: "{{ $.Release.Name }}-{{ $name }}"
targetNamespace: "{{ $config.namespace | default $.Release.Namespace }}"
install:
{{- toYaml $.Values.commons.helm.release.install | nindent 4 }}
test:
{{- toYaml $.Values.commons.helm.release.test | nindent 4 }}
upgrade:
{{- toYaml $.Values.commons.helm.release.upgrade | nindent 4 }}
interval: 5m
valuesFrom:
- kind: ConfigMap
name: "{{ $.Release.Name }}-{{ $name }}-init"
optional: true
valuesKey: init
targetPath: init.version
{{- with $.Values.componentCommons.helm.release.valuesFrom }}
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with $config.valuesFrom }}
{{- toYaml . | nindent 4 }}
{{- end }}
values:
{{- $config.values | default (dict) | mergeOverwrite (dict "commons" $.Values.commons "global" $.Values.global) | toYaml | nindent 4 }}
{{- end }}
{{- end }}