Merge "[DMAAP] DMaaP ServiceMesh compatibility"
[oom.git] / kubernetes / so / components / so-oof-adapter / templates / deployment.yaml
1 {{/*
2 # Copyright © 2020 Wipro Limited.
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 apiVersion: apps/v1
17 kind: Deployment
18 metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
19 spec:
20   selector: {{- include "common.selectors" . | nindent 4 }}
21   replicas: {{ index .Values.replicaCount }}
22   minReadySeconds: {{ index .Values.minReadySeconds }}
23   strategy:
24     type: {{ index .Values.updateStrategy.type }}
25     rollingUpdate:
26       maxUnavailable: {{ index .Values.updateStrategy.maxUnavailable }}
27       maxSurge: {{ index .Values.updateStrategy.maxSurge }}
28   template:
29     metadata:
30       labels: {{- include "common.labels" . | nindent 8 }}
31     spec:
32       initContainers: {{ include "so.certificate.container_importer" . | nindent 6 }}
33       containers:
34       - name: {{ include "common.name" . }}
35         image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.image }}
36         resources:
37 {{ include "common.resources" . | indent 10 }}
38         env:
39         - name: DB_HOST
40           value: {{ include "common.mariadbService" . }}
41         - name: DB_PORT
42           value: {{ include "common.mariadbPort" . | quote }}
43         - name: DB_USERNAME
44           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-user-creds" "key" "login") | indent 10 }}
45         - name: DB_PASSWORD
46           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-user-creds" "key" "password") | indent 10 }}
47         - name: DB_ADMIN_USERNAME
48           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-admin-creds" "key" "login") | indent 10 }}
49         - name: DB_ADMIN_PASSWORD
50           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-admin-creds" "key" "password") | indent 10 }}
51         - name: MSO_KEY
52           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "oof-adapter-mso-key" "key" "password") | indent 10 }}
53         - name: OOF_LOGIN
54           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "oof-auth" "key" "login") | indent 10 }}
55         - name: OOF_PASSWORD
56           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "oof-auth" "key" "password") | indent 10 }}
57         {{ include "so.certificates.env" . | indent 8 | trim }}
58         envFrom:
59         - configMapRef:
60             name: {{ include "common.fullname" . }}-configmap
61         imagePullPolicy:  {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
62         volumeMounts: {{ include "so.certificate.volumeMount" . | nindent 8 }}
63         - name: logs
64           mountPath: /app/logs
65         - name: config
66           mountPath: /app/config
67           readOnly: true
68         - name: {{ include "common.fullname" . }}-logs
69           mountPath: /var/log/onap
70 {{ include "so.helpers.livenessProbe" .| indent 8 }}
71         ports: {{- include "common.containerPorts" . | nindent 12  }}
72       # Filebeat sidecar container
73       {{ include "common.log.sidecar" . | nindent 6 }}
74       serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
75       volumes: {{ include "so.certificate.volumes" . | nindent 6 }}
76       - name: logs
77         emptyDir: {}
78       - name: config
79         configMap:
80             name: {{ include "common.fullname" . }}-app-configmap
81       - name: {{ include "common.fullname" . }}-log-conf
82         configMap:
83           name: {{ include "common.fullname" . }}-log
84       {{ include "common.log.volumes" (dict "dot" . "configMapNamePrefix" (tpl .Values.logConfigMapNamePrefix .)) | nindent 6 }}
85       - name:  {{ include "common.fullname" . }}-logs
86         emptyDir: {}
87       imagePullSecrets:
88         - name: "{{ include "common.namespace" . }}-docker-registry-key"