blob: 108b928eb548caeec96d96d2ea7051524cfc91bc [file] [log] [blame]
Jakub Latusek44f0fdd2020-10-21 13:36:29 +02001{{/*
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +00002# Copyright © 2018 AT&T USA
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.
Jakub Latusek44f0fdd2020-10-21 13:36:29 +020015*/}}
Grzegorz-Lisd1c1f6a2020-07-29 12:22:40 +020016apiVersion: apps/v1
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000017kind: Deployment
18metadata:
19 name: {{ include "common.fullname" . }}
20 namespace: {{ include "common.namespace" . }}
21 labels:
22 app: {{ include "common.fullname" . }}
23 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010024 release: {{ include "common.release" . }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000025spec:
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 }}
36 template:
37 metadata:
38 labels:
39 app: {{ include "common.name" . }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010040 release: {{ include "common.release" . }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000041 spec:
Sylvain Desbureauxaadf5452020-03-18 18:13:51 +010042 initContainers: {{ include "so.certificate.container_importer" . | nindent 6 }}
jmacc4f04d32018-10-12 18:24:24 +000043 - 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 }}
56 name: {{ include "common.name" . }}-readiness
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000057 containers:
58 - name: {{ include "common.name" . }}
59 image: {{ include "common.repository" . }}/{{ .Values.image }}
seshukm0df1f8e2020-08-17 21:45:49 +053060 resources: {{ include "common.resources" . | nindent 12 }}
61 {{- if .Values.global.aafEnabled }}
62 command:
63 - sh
64 args:
65 - -c
66 - |
67 export $(grep '^c' {{ .Values.soHelpers.certInitializer.credsPath }}/mycreds.prop | xargs -0)
68 export TRUSTSTORE_PASSWORD="${cadi_truststore_password}"
69 {{- if .Values.global.security.aaf.enabled }}
Sylvain Desbureauxa1bbe5c2020-10-28 16:55:18 +010070 export KEYSTORE_PASSWORD="${cadi_keystore_password_p12}"
seshukm0df1f8e2020-08-17 21:45:49 +053071 {{- end }}
72 /app/start-app.sh
73 {{- end }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000074 env:
75 - name: DB_HOST
76 valueFrom:
77 secretKeyRef:
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010078 name: {{ include "common.release" . }}-so-db-secrets
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000079 key: mariadb.readwrite.host
80 - name: DB_PORT
81 valueFrom:
82 secretKeyRef:
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010083 name: {{ include "common.release" . }}-so-db-secrets
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000084 key: mariadb.readwrite.port
85 - name: DB_USERNAME
Krzysztof Opasiak2cf35502020-03-24 23:01:38 +010086 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-user-creds" "key" "login") | indent 10 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000087 - name: DB_PASSWORD
Krzysztof Opasiak2cf35502020-03-24 23:01:38 +010088 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-user-creds" "key" "password") | indent 10 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000089 - name: DB_ADMIN_USERNAME
Krzysztof Opasiak2cf35502020-03-24 23:01:38 +010090 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-admin-creds" "key" "login") | indent 10 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000091 - name: DB_ADMIN_PASSWORD
Krzysztof Opasiak2cf35502020-03-24 23:01:38 +010092 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-admin-creds" "key" "password") | indent 10 }}
seshukm0df1f8e2020-08-17 21:45:49 +053093 {{ include "so.certificates.env" . | indent 8 | trim }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000094 envFrom:
95 - configMapRef:
96 name: {{ include "common.fullname" . }}-configmap
jmacc4f04d32018-10-12 18:24:24 +000097 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
seshukm0df1f8e2020-08-17 21:45:49 +053098 volumeMounts: {{ include "so.certificate.volumeMount" . | nindent 8 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +000099 - name: logs
100 mountPath: /app/logs
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000101 - name: config
102 mountPath: /app/config
103 readOnly: true
sunilb0a97ab22020-02-25 10:18:48 +0530104 - name: {{ include "common.fullname" . }}-logs
105 mountPath: /var/log/onap
seshukm0df1f8e2020-08-17 21:45:49 +0530106{{ include "so.helpers.livenessProbe" .| indent 8 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000107 ports:
108 - containerPort: {{ index .Values.containerPort }}
109 name: {{ .Values.service.portName }}
110 protocol: TCP
sunilb0a97ab22020-02-25 10:18:48 +0530111 # Filebeat sidecar container
112 - name: {{ include "common.name" . }}-filebeat-onap
113 image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
114 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
115 volumeMounts:
116 - name: {{ include "common.fullname" . }}-filebeat-conf
117 mountPath: /usr/share/filebeat/filebeat.yml
118 subPath: filebeat.yml
119 - name: {{ include "common.fullname" . }}-data-filebeat
120 mountPath: /usr/share/filebeat/data
121 - name: logs
122 mountPath: /var/log/onap/so
123 - name: {{ include "common.fullname" . }}-logs
124 mountPath: /var/log/onap
Sylvain Desbureauxaadf5452020-03-18 18:13:51 +0100125 volumes: {{ include "so.certificate.volumes" . | nindent 6 }}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000126 - name: logs
127 emptyDir: {}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000128 - name: config
129 configMap:
130 name: {{ include "common.fullname" . }}-app-configmap
sunilb0a97ab22020-02-25 10:18:48 +0530131 - name: {{ include "common.fullname" . }}-log-conf
132 configMap:
133 name: {{ include "common.fullname" . }}-log
134 - name: {{ include "common.fullname" . }}-filebeat-conf
135 configMap:
136 name: {{ .Release.Name }}-so-filebeat-configmap
137 - name: {{ include "common.fullname" . }}-data-filebeat
138 emptyDir: {}
139 - name: {{ include "common.fullname" . }}-logs
140 emptyDir: {}
Ramesh Parthasarathy3cd3fb12018-09-05 01:47:29 +0000141 imagePullSecrets:
vaibhav16dec0da88292018-08-13 06:10:27 +0000142 - name: "{{ include "common.namespace" . }}-docker-registry-key"