blob: d378cae606e02bb31e10bd6e9efa0ca394f7ba32 [file] [log] [blame]
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +00001# Copyright © 2018 AT&T USA
vaibhav_16dece04b2fe2018-03-22 09:07:12 +00002#
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
Mike Elliottd32d36e2018-02-12 15:54:03 -050015kind: Deployment
16metadata:
Mandeep Khindaa57d8dd2018-03-09 14:29:37 +000017 name: {{ include "common.fullname" . }}
Mike Elliottd32d36e2018-02-12 15:54:03 -050018 namespace: {{ include "common.namespace" . }}
19 labels:
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000020 app: {{ include "common.fullname" . }}
Mike Elliottd32d36e2018-02-12 15:54:03 -050021 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010022 release: {{ include "common.release" . }}
Mike Elliottd32d36e2018-02-12 15:54:03 -050023spec:
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 }}
Mike Elliottd32d36e2018-02-12 15:54:03 -050034 template:
35 metadata:
36 labels:
37 app: {{ include "common.name" . }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010038 release: {{ include "common.release" . }}
Mike Elliottd32d36e2018-02-12 15:54:03 -050039 spec:
seshukm0df1f8e2020-08-17 21:45:49 +053040 initContainers:
41 {{ include "so.certificate.container_importer" . | indent 6 | trim }}
Sylvain Desbureauxaadf5452020-03-18 18:13:51 +010042 - name: {{ include "common.name" . }}-readiness
43 command:
Sylvain Desbureaux1694e1d2020-08-21 09:58:25 +020044 - /app/ready.py
jmacc4f04d32018-10-12 18:24:24 +000045 args:
Mahendra Raghuwanshi72b69c12019-04-04 10:43:25 +000046 - --job-name
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010047 - {{ include "common.release" . }}-so-mariadb-config-job
jmacc4f04d32018-10-12 18:24:24 +000048 env:
49 - name: NAMESPACE
50 valueFrom:
51 fieldRef:
52 apiVersion: v1
53 fieldPath: metadata.namespace
Sylvain Desbureaux1694e1d2020-08-21 09:58:25 +020054 image: "{{ include "common.repository" . }}/{{ .Values.global.readinessImage }}"
jmacc4f04d32018-10-12 18:24:24 +000055 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
Mike Elliottd32d36e2018-02-12 15:54:03 -050056 containers:
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000057 - name: {{ include "common.name" . }}
58 image: {{ include "common.repository" . }}/{{ .Values.image }}
seshukm0df1f8e2020-08-17 21:45:49 +053059 resources: {{ include "common.resources" . | nindent 12 }}
60 {{- if .Values.global.aafEnabled }}
61 command:
62 - sh
63 args:
64 - -c
65 - |
66 export $(grep '^c' {{ .Values.soHelpers.certInitializer.credsPath }}/mycreds.prop | xargs -0)
67 export TRUSTSTORE_PASSWORD="${cadi_truststore_password}"
68 {{- if .Values.global.security.aaf.enabled }}
69 export KEYSTORE_PASSWORD="${cadi_keystore_password}"
70 {{- end }}
71 /app/start-app.sh
72 {{- end }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000073 env:
74 - name: DB_HOST
75 valueFrom:
76 secretKeyRef:
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010077 name: {{ include "common.release" . }}-so-db-secrets
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000078 key: mariadb.readwrite.host
79 - name: DB_PORT
80 valueFrom:
81 secretKeyRef:
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010082 name: {{ include "common.release" . }}-so-db-secrets
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000083 key: mariadb.readwrite.port
84 - name: DB_USERNAME
Krzysztof Opasiakc53ff542020-03-28 02:14:37 +010085 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-user-creds" "key" "login") | indent 10 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000086 - name: DB_PASSWORD
Krzysztof Opasiakc53ff542020-03-28 02:14:37 +010087 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-user-creds" "key" "password") | indent 10 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000088 - name: DB_ADMIN_USERNAME
Krzysztof Opasiakc53ff542020-03-28 02:14:37 +010089 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-admin-creds" "key" "login") | indent 10 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000090 - name: DB_ADMIN_PASSWORD
Krzysztof Opasiakc53ff542020-03-28 02:14:37 +010091 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-admin-creds" "key" "password") | indent 10 }}
seshukm0df1f8e2020-08-17 21:45:49 +053092 {{ include "so.certificates.env" . | indent 8 | trim }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000093 envFrom:
94 - configMapRef:
95 name: {{ include "common.fullname" . }}-configmap
jmacc4f04d32018-10-12 18:24:24 +000096 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
seshukm0df1f8e2020-08-17 21:45:49 +053097 volumeMounts: {{ include "so.certificate.volumeMount" . | nindent 8 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000098 - name: logs
99 mountPath: /app/logs
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000100 - name: config
101 mountPath: /app/config
102 readOnly: true
sunilb0a97ab22020-02-25 10:18:48 +0530103 - name: {{ include "common.fullname" . }}-logs
104 mountPath: /var/log/onap
seshukm0df1f8e2020-08-17 21:45:49 +0530105{{ include "so.helpers.livenessProbe" .| indent 8 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000106 ports:
107 - containerPort: {{ index .Values.containerPort }}
108 name: {{ .Values.service.portName }}
109 protocol: TCP
sunilb0a97ab22020-02-25 10:18:48 +0530110 # Filebeat sidecar container
111 - name: {{ include "common.name" . }}-filebeat-onap
112 image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
113 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
114 volumeMounts:
115 - name: {{ include "common.fullname" . }}-filebeat-conf
116 mountPath: /usr/share/filebeat/filebeat.yml
117 subPath: filebeat.yml
118 - name: {{ include "common.fullname" . }}-data-filebeat
119 mountPath: /usr/share/filebeat/data
120 - name: logs
121 mountPath: /var/log/onap/so
122 - name: {{ include "common.fullname" . }}-logs
123 mountPath: /var/log/onap
Sylvain Desbureauxaadf5452020-03-18 18:13:51 +0100124 volumes: {{ include "so.certificate.volumes" . | nindent 6 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000125 - name: logs
126 emptyDir: {}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000127 - name: config
128 configMap:
129 name: {{ include "common.fullname" . }}-app-configmap
sunilb0a97ab22020-02-25 10:18:48 +0530130 - name: {{ include "common.fullname" . }}-log-conf
131 configMap:
132 name: {{ include "common.fullname" . }}-log
133 - name: {{ include "common.fullname" . }}-filebeat-conf
134 configMap:
135 name: {{ .Release.Name }}-so-filebeat-configmap
136 - name: {{ include "common.fullname" . }}-data-filebeat
137 emptyDir: {}
138 - name: {{ include "common.fullname" . }}-logs
139 emptyDir: {}
Mike Elliottd32d36e2018-02-12 15:54:03 -0500140 imagePullSecrets:
vaibhav16dec0da88292018-08-13 06:10:27 +0000141 - name: "{{ include "common.namespace" . }}-docker-registry-key"