blob: 79a3fea34d8b5fd2d38d33b53dc5b79380e44ead [file] [log] [blame]
Jakub Latusek44f0fdd2020-10-21 13:36:29 +02001{{/*
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +00002# Copyright © 2018 AT&T USA
vaibhav_16dece04b2fe2018-03-22 09:07:12 +00003#
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.
Jakub Latusek44f0fdd2020-10-21 13:36:29 +020015*/}}
Grzegorz-Lisd1c1f6a2020-07-29 12:22:40 +020016apiVersion: apps/v1
Mike Elliottd32d36e2018-02-12 15:54:03 -050017kind: Deployment
18metadata:
Mandeep Khindaa57d8dd2018-03-09 14:29:37 +000019 name: {{ include "common.fullname" . }}
Mike Elliottd32d36e2018-02-12 15:54:03 -050020 namespace: {{ include "common.namespace" . }}
21 labels:
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000022 app: {{ include "common.fullname" . }}
Mike Elliottd32d36e2018-02-12 15:54:03 -050023 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010024 release: {{ include "common.release" . }}
Mike Elliottd32d36e2018-02-12 15:54:03 -050025spec:
Grzegorz-Lisd1c1f6a2020-07-29 12:22:40 +020026 selector:
27 matchLabels:
28 app: {{ include "common.name" . }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000029 replicas: {{ index .Values.replicaCount }}
30 minReadySeconds: {{ index .Values.minReadySeconds }}
31 strategy:
32 type: {{ index .Values.updateStrategy.type }}
33 rollingUpdate:
34 maxUnavailable: {{ index .Values.updateStrategy.maxUnavailable }}
35 maxSurge: {{ index .Values.updateStrategy.maxSurge }}
Mike Elliottd32d36e2018-02-12 15:54:03 -050036 template:
37 metadata:
38 labels:
39 app: {{ include "common.name" . }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010040 release: {{ include "common.release" . }}
Mike Elliottd32d36e2018-02-12 15:54:03 -050041 spec:
seshukm0df1f8e2020-08-17 21:45:49 +053042 initContainers:
43 {{ include "so.certificate.container_importer" . | indent 6 | trim }}
Sylvain Desbureauxaadf5452020-03-18 18:13:51 +010044 - name: {{ include "common.name" . }}-readiness
45 command:
Sylvain Desbureaux1694e1d2020-08-21 09:58:25 +020046 - /app/ready.py
jmacc4f04d32018-10-12 18:24:24 +000047 args:
Mahendra Raghuwanshi72b69c12019-04-04 10:43:25 +000048 - --job-name
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010049 - {{ include "common.release" . }}-so-mariadb-config-job
jmacc4f04d32018-10-12 18:24:24 +000050 env:
51 - name: NAMESPACE
52 valueFrom:
53 fieldRef:
54 apiVersion: v1
55 fieldPath: metadata.namespace
Sylvain Desbureaux1694e1d2020-08-21 09:58:25 +020056 image: "{{ include "common.repository" . }}/{{ .Values.global.readinessImage }}"
jmacc4f04d32018-10-12 18:24:24 +000057 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
Mike Elliottd32d36e2018-02-12 15:54:03 -050058 containers:
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000059 - name: {{ include "common.name" . }}
60 image: {{ include "common.repository" . }}/{{ .Values.image }}
seshukm0df1f8e2020-08-17 21:45:49 +053061 resources: {{ include "common.resources" . | nindent 12 }}
62 {{- if .Values.global.aafEnabled }}
63 command:
64 - sh
65 args:
66 - -c
67 - |
68 export $(grep '^c' {{ .Values.soHelpers.certInitializer.credsPath }}/mycreds.prop | xargs -0)
69 export TRUSTSTORE_PASSWORD="${cadi_truststore_password}"
70 {{- if .Values.global.security.aaf.enabled }}
Sylvain Desbureauxa1bbe5c2020-10-28 16:55:18 +010071 export KEYSTORE_PASSWORD="${cadi_keystore_password_p12}"
seshukm0df1f8e2020-08-17 21:45:49 +053072 {{- end }}
73 /app/start-app.sh
74 {{- end }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000075 env:
76 - name: DB_HOST
77 valueFrom:
78 secretKeyRef:
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010079 name: {{ include "common.release" . }}-so-db-secrets
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000080 key: mariadb.readwrite.host
81 - name: DB_PORT
82 valueFrom:
83 secretKeyRef:
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010084 name: {{ include "common.release" . }}-so-db-secrets
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000085 key: mariadb.readwrite.port
86 - name: DB_USERNAME
Krzysztof Opasiakc53ff542020-03-28 02:14:37 +010087 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-user-creds" "key" "login") | indent 10 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000088 - name: DB_PASSWORD
Krzysztof Opasiakc53ff542020-03-28 02:14:37 +010089 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-user-creds" "key" "password") | indent 10 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000090 - name: DB_ADMIN_USERNAME
Krzysztof Opasiakc53ff542020-03-28 02:14:37 +010091 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-admin-creds" "key" "login") | indent 10 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000092 - name: DB_ADMIN_PASSWORD
Krzysztof Opasiakc53ff542020-03-28 02:14:37 +010093 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-admin-creds" "key" "password") | indent 10 }}
seshukm0df1f8e2020-08-17 21:45:49 +053094 {{ include "so.certificates.env" . | indent 8 | trim }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000095 envFrom:
96 - configMapRef:
97 name: {{ include "common.fullname" . }}-configmap
jmacc4f04d32018-10-12 18:24:24 +000098 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
seshukm0df1f8e2020-08-17 21:45:49 +053099 volumeMounts: {{ include "so.certificate.volumeMount" . | nindent 8 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000100 - name: logs
101 mountPath: /app/logs
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000102 - name: config
103 mountPath: /app/config
104 readOnly: true
sunilb0a97ab22020-02-25 10:18:48 +0530105 - name: {{ include "common.fullname" . }}-logs
106 mountPath: /var/log/onap
seshukm0df1f8e2020-08-17 21:45:49 +0530107{{ include "so.helpers.livenessProbe" .| indent 8 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000108 ports:
109 - containerPort: {{ index .Values.containerPort }}
110 name: {{ .Values.service.portName }}
111 protocol: TCP
sunilb0a97ab22020-02-25 10:18:48 +0530112 # Filebeat sidecar container
113 - name: {{ include "common.name" . }}-filebeat-onap
114 image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
115 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
116 volumeMounts:
117 - name: {{ include "common.fullname" . }}-filebeat-conf
118 mountPath: /usr/share/filebeat/filebeat.yml
119 subPath: filebeat.yml
120 - name: {{ include "common.fullname" . }}-data-filebeat
121 mountPath: /usr/share/filebeat/data
122 - name: logs
123 mountPath: /var/log/onap/so
124 - name: {{ include "common.fullname" . }}-logs
125 mountPath: /var/log/onap
Sylvain Desbureauxaadf5452020-03-18 18:13:51 +0100126 volumes: {{ include "so.certificate.volumes" . | nindent 6 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000127 - name: logs
128 emptyDir: {}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000129 - name: config
130 configMap:
131 name: {{ include "common.fullname" . }}-app-configmap
sunilb0a97ab22020-02-25 10:18:48 +0530132 - name: {{ include "common.fullname" . }}-log-conf
133 configMap:
134 name: {{ include "common.fullname" . }}-log
135 - name: {{ include "common.fullname" . }}-filebeat-conf
136 configMap:
137 name: {{ .Release.Name }}-so-filebeat-configmap
138 - name: {{ include "common.fullname" . }}-data-filebeat
139 emptyDir: {}
140 - name: {{ include "common.fullname" . }}-logs
141 emptyDir: {}
Mike Elliottd32d36e2018-02-12 15:54:03 -0500142 imagePullSecrets:
vaibhav16dec0da88292018-08-13 06:10:27 +0000143 - name: "{{ include "common.namespace" . }}-docker-registry-key"