Merge "[CONSUL] Add limits to consul chart."
[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 "common.repository" . }}/{{ .Values.image }}
36         resources:
37 {{ include "common.resources" . | indent 10 }}
38         env:
39         - name: DB_HOST
40           valueFrom:
41             secretKeyRef:
42               name: {{ include "common.release" . }}-so-db-secrets
43               key: mariadb.readwrite.host
44         - name: DB_PORT
45           valueFrom:
46             secretKeyRef:
47               name: {{ include "common.release" . }}-so-db-secrets
48               key: mariadb.readwrite.port
49         - name: DB_USERNAME
50           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-user-creds" "key" "login") | indent 10 }}
51         - name: DB_PASSWORD
52           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-user-creds" "key" "password") | indent 10 }}
53         - name: DB_ADMIN_USERNAME
54           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-admin-creds" "key" "login") | indent 10 }}
55         - name: DB_ADMIN_PASSWORD
56           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-admin-creds" "key" "password") | indent 10 }}
57         - name: MSO_KEY
58           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "oof-adapter-mso-key" "key" "password") | indent 10 }}
59         - name: OOF_LOGIN
60           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "oof-auth" "key" "login") | indent 10 }}
61         - name: OOF_PASSWORD
62           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "oof-auth" "key" "password") | indent 10 }}
63         {{ include "so.certificates.env" . | indent 8 | trim }}
64         envFrom:
65         - configMapRef:
66             name: {{ include "common.fullname" . }}-configmap
67         imagePullPolicy:  {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
68         volumeMounts: {{ include "so.certificate.volumeMount" . | nindent 8 }}
69         - name: logs
70           mountPath: /app/logs
71         - name: config
72           mountPath: /app/config
73           readOnly: true
74         - name: {{ include "common.fullname" . }}-logs
75           mountPath: /var/log/onap
76 {{ include "so.helpers.livenessProbe" .| indent 8 }}
77         ports: {{- include "common.containerPorts" . | nindent 12  }}
78       # Filebeat sidecar container
79       - name: {{ include "common.name" . }}-filebeat-onap
80         image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
81         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
82         volumeMounts:
83         - name: {{ include "common.fullname" . }}-filebeat-conf
84           mountPath: /usr/share/filebeat/filebeat.yml
85           subPath: filebeat.yml
86         - name: {{ include "common.fullname" . }}-data-filebeat
87           mountPath: /usr/share/filebeat/data
88         - name: logs
89           mountPath: /var/log/onap/so
90         - name: {{ include "common.fullname" . }}-logs
91           mountPath: /var/log/onap
92       volumes: {{ include "so.certificate.volumes" . | nindent 6 }}
93       - name: logs
94         emptyDir: {}
95       - name: config
96         configMap:
97             name: {{ include "common.fullname" . }}-app-configmap
98       - name: {{ include "common.fullname" . }}-log-conf
99         configMap:
100           name: {{ include "common.fullname" . }}-log
101       - name: {{ include "common.fullname" . }}-filebeat-conf
102         configMap:
103           name: {{ .Release.Name }}-so-filebeat-configmap
104       - name: {{ include "common.fullname" . }}-data-filebeat
105         emptyDir: {}
106       - name:  {{ include "common.fullname" . }}-logs
107         emptyDir: {}
108       imagePullSecrets:
109         - name: "{{ include "common.namespace" . }}-docker-registry-key"