apiVersion: {{ template "operator_api_version" . }} kind: Alertmanager metadata: labels: app: {{ template "app.name" . }} chart: {{ template "app.version" . }} heritage: {{ .Release.Service }} release: {{ .Release.Name }} name: {{ .Release.Name }} spec: {{- if .Values.securityContext }} securityContext: {{ toYaml .Values.securityContext | indent 4 }} {{- end }} podMetadata: labels: app: {{ template "app.name" . }} chart: {{ template "app.version" . }} release: {{ .Release.Name }} baseImage: {{ template "system_default_registry" . }}{{ .Values.image.repository }} nodeSelector: {{- include "linux-node-selector" . | nindent 4 }} {{- range .Values.nodeSelectors }} {{- $pair := regexSplit "=" . 2 }} {{- if eq 2 (len $pair) }} {{ (index $pair 0) }}: {{ (index $pair 1) }} {{- else }} {{ (index $pair 0) }}: "" {{- end }} {{- end }} paused: {{ .Values.paused }} replicas: {{ .Values.replicaCount }} logLevel: {{ .Values.logLevel }} {{- if and .Values.resources .Values.resources.core }} resources: {{ toYaml .Values.resources.core | indent 4 }} {{- end }} retention: "{{ .Values.retention }}" {{- if .Values.secrets }} secrets: {{ toYaml .Values.secrets | indent 4 }} {{- end }} {{- if .Values.enabledRBAC }} serviceAccountName: {{ default (include "app.fullname" .) .Values.serviceAccountName }} {{- end }} {{- if or .Values.storageSpec .Values.persistence.enabled }} storage: volumeClaimTemplate: {{- if .Values.persistence.name }} metadata: name: {{ .Values.persistence.name }} {{- end }} spec: {{- if .Values.storageSpec }} {{ toYaml .Values.storageSpec | indent 8 }} {{- else }} {{ if and .Values.persistence.storageClass (ne "default" .Values.persistence.storageClass) }} storageClassName: {{ .Values.persistence.storageClass }} {{ end }} accessModes: - {{ default "ReadWriteOnce" .Values.persistence.accessMode }} resources: requests: storage: {{ .Values.persistence.size | quote }} {{- end }} {{- end }} version: "{{ .Values.image.tag }}" affinity: podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - weight: 100 podAffinityTerm: topologyKey: kubernetes.io/hostname labelSelector: matchLabels: app: {{ template "app.name" . }} alertmanager: {{ .Release.Name }} tolerations: {{- include "linux-node-tolerations" . | nindent 8 }} {{- if .Values.tolerations }} {{ toYaml .Values.tolerations | indent 4 }} {{- end }}