Refactor Distributed Analytics project structure
[demo.git] / vnfs / DAaaS / deploy / operator / charts / prometheus-operator / templates / alertmanager / alertmanager.yaml
1 {{- if .Values.alertmanager.enabled }}
2 apiVersion: {{ printf "%s/v1" (.Values.prometheusOperator.crdApiGroup | default "monitoring.coreos.com") }}
3 kind: Alertmanager
4 metadata:
5   name: {{ template "prometheus-operator.fullname" . }}-alertmanager
6   labels:
7     app: {{ template "prometheus-operator.name" . }}-alertmanager
8 {{ include "prometheus-operator.labels" . | indent 4 }}
9 spec:
10 {{- if .Values.alertmanager.alertmanagerSpec.image }}
11   baseImage: {{ .Values.alertmanager.alertmanagerSpec.image.repository }}
12   version: {{ .Values.alertmanager.alertmanagerSpec.image.tag }}
13 {{- end }}
14   replicas: {{ .Values.alertmanager.alertmanagerSpec.replicas }}
15   listenLocal: {{ .Values.alertmanager.alertmanagerSpec.listenLocal }}
16   serviceAccountName: {{ template "prometheus-operator.alertmanager.serviceAccountName" . }}
17 {{- if .Values.alertmanager.alertmanagerSpec.externalUrl }}
18   externalUrl: "{{ .Values.alertmanager.alertmanagerSpec.externalUrl }}"
19 {{- end }}
20 {{- if .Values.alertmanager.alertmanagerSpec.externalUrl }}
21   externalUrl: "{{ .Values.alertmanager.alertmanagerSpec.externalUrl }}"
22 {{- else if .Values.alertmanager.ingress.enabled }}
23   externalUrl: "http://{{ index .Values.alertmanager.ingress.hosts 0 }}{{ .Values.alertmanager.alertmanagerSpec.routePrefix }}"
24 {{- else }}
25   externalUrl: http://{{ template "prometheus-operator.fullname" . }}-alertmanager.{{ .Release.Namespace }}:9093
26 {{- end }}
27 {{- if .Values.alertmanager.alertmanagerSpec.nodeSelector }}
28   nodeSelector:
29 {{ toYaml .Values.alertmanager.alertmanagerSpec.nodeSelector | indent 4 }}
30 {{- end }}
31   paused: {{ .Values.alertmanager.alertmanagerSpec.paused }}
32   logLevel:  {{ .Values.alertmanager.alertmanagerSpec.logLevel | quote  }}
33   retention: {{ .Values.alertmanager.alertmanagerSpec.retention | quote  }}
34 {{- if .Values.alertmanager.alertmanagerSpec.secrets }}
35   secrets:
36 {{ toYaml .Values.alertmanager.alertmanagerSpec.secrets | indent 4 }}
37 {{- end }}
38 {{- if .Values.alertmanager.alertmanagerSpec.configMaps }}
39   configMaps:
40 {{ toYaml .Values.alertmanager.alertmanagerSpec.configMaps | indent 4 }}
41 {{- end }}
42 {{- if .Values.alertmanager.alertmanagerSpec.resources }}
43   resources:
44 {{ toYaml .Values.alertmanager.alertmanagerSpec.resources | indent 4 }}
45 {{- end }}
46 {{- if .Values.alertmanager.alertmanagerSpec.routePrefix }}
47   routePrefix: "{{ .Values.alertmanager.alertmanagerSpec.routePrefix }}"
48 {{- end }}
49 {{- if .Values.alertmanager.alertmanagerSpec.securityContext }}
50   securityContext:
51 {{ toYaml .Values.alertmanager.alertmanagerSpec.securityContext | indent 4 }}
52 {{- end }}
53 {{- if .Values.alertmanager.alertmanagerSpec.storage }}
54   storage:
55 {{ toYaml .Values.alertmanager.alertmanagerSpec.storage | indent 4 }}
56 {{- end }}
57 {{- if .Values.alertmanager.alertmanagerSpec.podMetadata }}
58   podMetadata:
59 {{ toYaml .Values.alertmanager.alertmanagerSpec.podMetadata | indent 4 }}
60 {{- end }}
61 {{- if eq .Values.alertmanager.alertmanagerSpec.podAntiAffinity "hard" }}
62   affinity:
63     podAntiAffinity:
64       requiredDuringSchedulingIgnoredDuringExecution:
65       - topologyKey: {{ .Values.alertmanager.alertmanagerSpec.podAntiAffinityTopologyKey }}
66         labelSelector:
67           matchLabels:
68             app: alertmanager
69             alertmanager: {{ template "prometheus-operator.fullname" . }}-alertmanager
70 {{- else if eq .Values.alertmanager.alertmanagerSpec.podAntiAffinity "soft" }}
71   affinity:
72     podAntiAffinity:
73       preferredDuringSchedulingIgnoredDuringExecution:
74       - weight: 100
75         podAffinityTerm:
76           topologyKey: {{ .Values.alertmanager.alertmanagerSpec.podAntiAffinityTopologyKey }}
77           labelSelector:
78             matchLabels:
79               app: alertmanager
80               alertmanager: {{ template "prometheus-operator.fullname" . }}-alertmanager
81 {{- end }}
82 {{- if .Values.alertmanager.alertmanagerSpec.tolerations }}
83   tolerations:
84 {{ toYaml .Values.alertmanager.alertmanagerSpec.tolerations | indent 4 }}
85 {{- end }}
86 {{- if .Values.global.imagePullSecrets }}
87   imagePullSecrets:
88 {{ toYaml .Values.global.imagePullSecrets | indent 4 }}
89 {{- end }}
90 {{- if .Values.alertmanager.alertmanagerSpec.containers }}
91   containers:
92 {{ toYaml .Values.alertmanager.alertmanagerSpec.containers | indent 4 }}
93 {{- end }}
94 {{- if .Values.alertmanager.alertmanagerSpec.priorityClassName }}
95   priorityClassName: {{.Values.alertmanager.alertmanagerSpec.priorityClassName }}
96 {{- end }}
97 {{- if .Values.alertmanager.alertmanagerSpec.additionalPeers }}
98   additionalPeers: {{.Values.alertmanager.alertmanagerSpec.additionalPeers }}
99 {{- end }}
100 {{- end }}