blob: 3db3685b86fc24d8863e9cd0f5cf4e6e2754032b [file] [log] [blame]
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +00001# Copyright © 2017 Amdocs, AT&T, Bell Canada
toshrajbhardwajf4fc1c62018-08-06 07:35:14 +00002# Modifications Copyright © 2018 ZTE
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +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.
15
16apiVersion: extensions/v1beta1
17kind: Deployment
18metadata:
19 name: {{ include "common.fullname" . }}
20 namespace: {{ include "common.namespace" . }}
21 labels:
22 app: {{ include "common.name" . }}
23 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010024 release: {{ include "common.release" . }}
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +000025 heritage: {{ .Release.Service }}
26spec:
27 replicas: {{ .Values.replicaCount }}
28 template:
29 metadata:
30 labels:
31 app: {{ include "common.name" . }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010032 release: {{ include "common.release" . }}
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +000033 spec:
34 initContainers:
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +000035 - name: {{ include "common.name" . }}-job-completion
36 image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
37 imagePullPolicy: "{{ .Values.global.pullPolicy | default .Values.pullPolicy }}"
38 command:
39 - /root/job_complete.py
40 args:
41 - --job-name
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010042 - {{ include "common.release" . }}-sdc-onboarding-be-cassandra-init
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +000043 env:
44 - name: NAMESPACE
45 valueFrom:
46 fieldRef:
47 apiVersion: v1
48 fieldPath: metadata.namespace
k.kedron2774ab12020-03-26 11:13:46 +010049 - name: {{ include "common.name" . }}-update-config
50 image: "{{ .Values.global.envsubstImage }}"
51 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
52 command:
53 - sh
54 args:
55 - -c
56 - "cd /config-input && for PFILE in `find . -not -type d | grep -v -F ..`; do envsubst <${PFILE} >/config-output/${PFILE}; chmod 0755 /config-output/${PFILE}; done"
57 env:
58 - name: KEYSTORE_PASS
59 valueFrom:
60 secretKeyRef:
61 name: {{ include "common.release" . }}-sdc-cs-secrets
62 key: keystore_password
63 - name: TRUSTSTORE_PASS
64 valueFrom:
65 secretKeyRef:
66 name: {{ include "common.release" . }}-sdc-cs-secrets
67 key: truststore_password
68 volumeMounts:
69 - name: {{ include "common.fullname" . }}-environments
70 mountPath: /config-input/
71 - name: sdc-environments-output
72 mountPath: /config-output/
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +000073 containers:
74 - name: {{ include "common.name" . }}
75 image: "{{ include "common.repository" . }}/{{ .Values.image }}"
76 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
77 ports:
78 - containerPort: {{ .Values.service.internalPort }}
79 - containerPort: {{ .Values.service.internalPort2 }}
80 {{ if eq .Values.liveness.enabled true }}
81 livenessProbe:
amitjaia4cef272019-01-08 15:29:42 +053082 exec:
83 command:
MichaelMorrisb137f7e2020-03-15 17:44:48 +000084 - "/var/lib/jetty/ready-probe.sh"
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +000085 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
86 periodSeconds: {{ .Values.liveness.periodSeconds }}
Brian Freeman6142d942019-10-02 09:50:19 -050087 timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +000088 {{ end }}
89 readinessProbe:
90 exec:
91 command:
MichaelMorrisb137f7e2020-03-15 17:44:48 +000092 - "/var/lib/jetty/ready-probe.sh"
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +000093 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
94 periodSeconds: {{ .Values.readiness.periodSeconds }}
Brian Freeman6142d942019-10-02 09:50:19 -050095 timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
Mukula93baa82018-09-19 15:56:58 +000096 resources:
Mandeep Khinda5e3f36a2018-09-24 15:25:42 +000097{{ include "common.resources" . | indent 12 }}
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +000098 env:
99 - name: ENVNAME
100 value: {{ .Values.global.env.name }}
101 - name: JAVA_OPTIONS
102 value: {{ .Values.config.javaOptions }}
103 - name: SDC_CLUSTER_NAME
104 value: "SDC-CS-{{ .Values.global.env.name }}"
105 - name: cassandra_ssl_enabled
106 value: {{ .Values.config.cassandraSslEnabled | quote }}
107 - name: HOST_IP
108 valueFrom:
109 fieldRef:
110 fieldPath: status.podIP
111 - name: SDC_USER
112 valueFrom:
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +0100113 secretKeyRef: {name: {{ include "common.release" . }}-sdc-cs-secrets, key: sdc_user}
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +0000114 - name: SDC_PASSWORD
115 valueFrom:
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +0100116 secretKeyRef: {name: {{ include "common.release" . }}-sdc-cs-secrets, key: sdc_password}
kooper543d3aa2019-05-02 10:27:15 +0000117 - name: SDC_CERT_DIR
118 value: {{ .Values.cert.certDir }}
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +0000119 volumeMounts:
k.kedron2774ab12020-03-26 11:13:46 +0100120 - name: sdc-environments-output
MichaelMorrisb137f7e2020-03-15 17:44:48 +0000121 mountPath: /var/lib/jetty/chef-solo/environments/
k.kedron2774ab12020-03-26 11:13:46 +0100122 - name: sdc-cert
123 mountPath: /var/lib/jetty/chef-solo/cookbooks/sdc-onboard-backend/files/default/org.onap.sdc.p12
124 subPath: org.onap.sdc.p12
125 - name: sdc-cert
126 mountPath: /var/lib/jetty/chef-solo/cookbooks/sdc-onboard-backend/files/default/org.onap.sdc.trust.jks
127 subPath: org.onap.sdc.trust.jks
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +0000128 - name: {{ include "common.fullname" . }}-localtime
129 mountPath: /etc/localtime
130 readOnly: true
131 - name: {{ include "common.fullname" . }}-logs
132 mountPath: /var/log/onap
133 - name: {{ include "common.fullname" . }}-logback
134 mountPath: /tmp/logback.xml
135 subPath: logback.xml
kooper543d3aa2019-05-02 10:27:15 +0000136 - name: {{ include "common.fullname" . }}-cert-storage
137 mountPath: "{{ .Values.cert.certDir }}"
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +0000138 lifecycle:
139 postStart:
140 exec:
141 command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/onboarding-be/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +0000142 # side car containers
143 - name: {{ include "common.name" . }}-filebeat-onap
144 image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
145 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
146 volumeMounts:
147 - name: {{ include "common.fullname" . }}-filebeat-conf
148 mountPath: /usr/share/filebeat/filebeat.yml
149 subPath: filebeat.yml
150 - name: {{ include "common.fullname" . }}-logs
151 mountPath: /var/log/onap
152 - name: {{ include "common.fullname" . }}-data-filebeat
153 mountPath: /usr/share/filebeat/data
154 volumes:
155 - name: {{ include "common.fullname" . }}-localtime
156 hostPath:
157 path: /etc/localtime
k.kedron2774ab12020-03-26 11:13:46 +0100158 - name: sdc-cert
159 secret:
160 secretName: sdc-cert
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +0000161 - name: {{ include "common.fullname" . }}-filebeat-conf
162 configMap:
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +0100163 name: {{ include "common.release" . }}-sdc-filebeat-configmap
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +0000164 - name: {{ include "common.fullname" . }}-data-filebeat
165 emptyDir: {}
166 - name: {{ include "common.fullname" . }}-logback
167 configMap:
168 name : {{ include "common.fullname" . }}-logging-configmap
169 - name: {{ include "common.fullname" . }}-environments
170 configMap:
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +0100171 name: {{ include "common.release" . }}-sdc-environments-configmap
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +0000172 defaultMode: 0755
k.kedron2774ab12020-03-26 11:13:46 +0100173 - name: sdc-environments-output
174 emptyDir: { medium: "Memory" }
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +0000175 - name: {{ include "common.fullname" . }}-logs
176 emptyDir: {}
kooper543d3aa2019-05-02 10:27:15 +0000177 - name: {{ include "common.fullname" . }}-cert-storage
178 persistentVolumeClaim:
179 claimName: {{ include "common.fullname" . }}-cert
Mandeep Khinda51a8b1b2018-04-24 20:05:32 +0000180 imagePullSecrets:
toshrajbhardwajf4fc1c62018-08-06 07:35:14 +0000181 - name: "{{ include "common.namespace" . }}-docker-registry-key"