Merge "[DMAAP] DMaaP ServiceMesh compatibility"
[oom.git] / kubernetes / multicloud / components / multicloud-prometheus / components / prometheus-alertmanager / templates / deployment.yaml
1 {{/*
2 # Copyright 2018 Intel Corporation, Inc
3 #
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
7 #
8 #       http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15 */}}
16
17 {{- if .Values.global.alertmanager.enabled -}}
18
19 apiVersion: apps/v1
20 kind: Deployment
21 metadata:
22   name: {{ include "common.fullname" . }}
23   namespace: {{ include "common.namespace" . }}
24   labels:
25     app: {{ include "common.name" . }}
26     chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
27     release: {{ include "common.release" . }}
28     heritage: {{ .Release.Service }}
29 spec:
30   replicas: {{ .Values.replicaCount }}
31   selector:
32     matchLabels:
33       app: {{ include "common.name" . }}
34   template:
35     metadata:
36       labels:
37         app: {{ include "common.name" . }}
38         release: {{ include "common.release" . }}
39       name: {{ include "common.name" . }}
40     spec:
41       containers:
42       - name: {{ include "common.name" . }}-configmap-reload
43         image: {{ include "repositoryGenerator.dockerHubRepository" . }}/{{ .Values.global.configmapReload.image.repository }}:{{ .Values.global.configmapReload.image.tag }}
44         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
45         args:
46           - --volume-dir=/etc/config
47           - --webhook-url=http://localhost:9093/-/reload
48         volumeMounts:
49           - name: {{ include "common.fullname" . }}-config
50             mountPath: /etc/config
51             readOnly: true
52
53       - name: {{ include "common.name" . }}
54         image: {{ include "repositoryGenerator.dockerHubRepository" . }}/{{ .Values.image.repository }}:{{ .Values.image.tag }}
55         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
56         args:
57           - --config.file=/etc/config/alertmanager.yml
58           - --storage.path={{ .Values.persistence.containerMountPath }}
59         resources:
60 {{ toYaml .Values.resources | indent 10 }}
61         ports:
62         - containerPort: {{ .Values.service.internalPort }}
63         {{- if .Values.readiness.enabled }}
64         readinessProbe:
65           httpGet:
66             path: /#/status
67             port: {{ .Values.service.internalPort }}
68           initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
69           periodSeconds: {{ .Values.readiness.periodSeconds }}
70           timeoutSeconds: {{ .Values.readiness.timeoutSeconds }}
71         {{ end -}}
72         volumeMounts:
73           - name: {{ include "common.fullname" . }}-config
74             mountPath: /etc/config
75           - name: {{ include "common.fullname" . }}-storage
76             mountPath: {{ .Values.persistence.containerMountPath }}
77       {{- if .Values.nodeSelector }}
78       nodeSelector:
79 {{ toYaml .Values.nodeSelector | indent 8 }}
80       {{- end -}}
81       {{- if .Values.affinity }}
82       affinity:
83 {{ toYaml .Values.affinity | indent 8 }}
84       {{- end }}
85       volumes:
86         - name: {{ include "common.fullname" . }}-config
87           configMap:
88             name: {{ include "common.fullname" . }}
89         - name: {{ include "common.fullname" . }}-storage
90         {{- if .Values.persistence.enabled }}
91           persistentVolumeClaim:
92             claimName: {{ include "common.fullname" . }}
93         {{- else }}
94           emptyDir: {}
95         {{- end }}
96       imagePullSecrets:
97       - name: "{{ include "common.namespace" . }}-docker-registry-key"
98       restartPolicy: Always
99
100 {{- end -}}