blob: de769018657b9d29bbb69e02cac9c0bd306413f8 [file] [log] [blame]
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +00001# Copyright © 2018 AT&T USA
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
Grzegorz-Lisd1c1f6a2020-07-29 12:22:40 +020014apiVersion: apps/v1
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000015kind: Deployment
16metadata:
17 name: {{ include "common.fullname" . }}
18 namespace: {{ include "common.namespace" . }}
19 labels:
20 app: {{ include "common.fullname" . }}
21 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010022 release: {{ include "common.release" . }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000023spec:
Grzegorz-Lisd1c1f6a2020-07-29 12:22:40 +020024 selector:
25 matchLabels:
26 app: {{ include "common.name" . }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000027 replicas: {{ index .Values.replicaCount }}
28 minReadySeconds: {{ index .Values.minReadySeconds }}
29 strategy:
30 type: {{ index .Values.updateStrategy.type }}
31 rollingUpdate:
32 maxUnavailable: {{ index .Values.updateStrategy.maxUnavailable }}
33 maxSurge: {{ index .Values.updateStrategy.maxSurge }}
34 template:
35 metadata:
36 labels:
37 app: {{ include "common.name" . }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010038 release: {{ include "common.release" . }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000039 spec:
Sylvain Desbureauxaadf5452020-03-18 18:13:51 +010040 initContainers: {{ include "so.certificate.container_importer" . | nindent 6 }}
jmacc4f04d32018-10-12 18:24:24 +000041 - command:
Sylvain Desbureaux1694e1d2020-08-21 09:58:25 +020042 - /app/ready.py
jmacc4f04d32018-10-12 18:24:24 +000043 args:
Mahendra Raghuwanshi72b69c12019-04-04 10:43:25 +000044 - --job-name
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010045 - {{ include "common.release" . }}-so-mariadb-config-job
jmacc4f04d32018-10-12 18:24:24 +000046 env:
47 - name: NAMESPACE
48 valueFrom:
49 fieldRef:
50 apiVersion: v1
51 fieldPath: metadata.namespace
Sylvain Desbureaux1694e1d2020-08-21 09:58:25 +020052 image: "{{ include "common.repository" . }}/{{ .Values.global.readinessImage }}"
jmacc4f04d32018-10-12 18:24:24 +000053 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
54 name: {{ include "common.name" . }}-readiness
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000055 containers:
56 - name: {{ include "common.name" . }}
57 image: {{ include "common.repository" . }}/{{ .Values.image }}
seshukm0df1f8e2020-08-17 21:45:49 +053058 resources: {{ include "common.resources" . | nindent 12 }}
59 {{- if .Values.global.aafEnabled }}
60 command:
61 - sh
62 args:
63 - -c
64 - |
65 export $(grep '^c' {{ .Values.soHelpers.certInitializer.credsPath }}/mycreds.prop | xargs -0)
66 export TRUSTSTORE_PASSWORD="${cadi_truststore_password}"
67 {{- if .Values.global.security.aaf.enabled }}
68 export KEYSTORE_PASSWORD="${cadi_keystore_password}"
69 {{- end }}
70 /app/start-app.sh
71 {{- end }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000072 env:
73 - name: DB_HOST
74 valueFrom:
75 secretKeyRef:
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010076 name: {{ include "common.release" . }}-so-db-secrets
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000077 key: mariadb.readwrite.host
78 - name: DB_PORT
79 valueFrom:
80 secretKeyRef:
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010081 name: {{ include "common.release" . }}-so-db-secrets
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000082 key: mariadb.readwrite.port
83 - name: DB_USERNAME
Krzysztof Opasiakc34ed602020-03-24 23:10:53 +010084 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-user-creds" "key" "login") | indent 10 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000085 - name: DB_PASSWORD
Krzysztof Opasiakc34ed602020-03-24 23:10:53 +010086 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-user-creds" "key" "password") | indent 10 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000087 - name: DB_ADMIN_USERNAME
Krzysztof Opasiakc34ed602020-03-24 23:10:53 +010088 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-admin-creds" "key" "login") | indent 10 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000089 - name: DB_ADMIN_PASSWORD
Krzysztof Opasiakc34ed602020-03-24 23:10:53 +010090 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-admin-creds" "key" "password") | indent 10 }}
seshukm0df1f8e2020-08-17 21:45:49 +053091 {{ include "so.certificates.env" . | indent 8 | trim }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000092 envFrom:
93 - configMapRef:
94 name: {{ include "common.fullname" . }}-configmap
jmacc4f04d32018-10-12 18:24:24 +000095 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
seshukm0df1f8e2020-08-17 21:45:49 +053096 volumeMounts: {{ include "so.certificate.volumeMount" . | nindent 8 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000097 - name: logs
98 mountPath: /app/logs
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000099 - name: config
100 mountPath: /app/config
101 readOnly: true
sunilb0a97ab22020-02-25 10:18:48 +0530102 - name: {{ include "common.fullname" . }}-logs
103 mountPath: /var/log/onap
seshukm0df1f8e2020-08-17 21:45:49 +0530104{{ include "so.helpers.livenessProbe" .| indent 8 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000105 ports:
106 - containerPort: {{ index .Values.containerPort }}
107 name: {{ .Values.service.portName }}
108 protocol: TCP
sunilb0a97ab22020-02-25 10:18:48 +0530109 # Filebeat sidecar container
110 - name: {{ include "common.name" . }}-filebeat-onap
111 image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
112 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
113 volumeMounts:
114 - name: {{ include "common.fullname" . }}-filebeat-conf
115 mountPath: /usr/share/filebeat/filebeat.yml
116 subPath: filebeat.yml
117 - name: {{ include "common.fullname" . }}-data-filebeat
118 mountPath: /usr/share/filebeat/data
119 - name: logs
120 mountPath: /var/log/onap/so
121 - name: {{ include "common.fullname" . }}-logs
122 mountPath: /var/log/onap
Sylvain Desbureauxaadf5452020-03-18 18:13:51 +0100123 volumes: {{ include "so.certificate.volumes" . | nindent 6 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000124 - name: logs
125 emptyDir: {}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000126 - name: config
127 configMap:
128 name: {{ include "common.fullname" . }}-app-configmap
sunilb0a97ab22020-02-25 10:18:48 +0530129 - name: {{ include "common.fullname" . }}-log-conf
130 configMap:
131 name: {{ include "common.fullname" . }}-log
132 - name: {{ include "common.fullname" . }}-filebeat-conf
133 configMap:
134 name: {{ .Release.Name }}-so-filebeat-configmap
135 - name: {{ include "common.fullname" . }}-data-filebeat
136 emptyDir: {}
137 - name: {{ include "common.fullname" . }}-logs
138 emptyDir: {}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000139 imagePullSecrets:
vaibhav16dec0da88292018-08-13 06:10:27 +0000140 - name: "{{ include "common.namespace" . }}-docker-registry-key"