blob: f86c636a43f9b405a3b7a2a6f7c0c37c522dbdfb [file] [log] [blame]
sebdetd85e24c2019-09-04 18:35:26 +02001# Copyright © 2017 Amdocs, Bell Canada
2# Modifications Copyright © 2018 AT&T
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.
15
Magdalena_Biernacka7d0dcbe2020-07-12 23:21:43 +020016apiVersion: apps/v1
sebdetd85e24c2019-09-04 18:35:26 +020017kind: 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" . }}
sebdetd85e24c2019-09-04 18:35:26 +020025 heritage: {{ .Release.Service }}
26spec:
27 replicas: {{ .Values.replicaCount }}
Magdalena_Biernacka7d0dcbe2020-07-12 23:21:43 +020028 selector:
29 matchLabels:
30 app: {{ include "common.name" . }}
sebdetd85e24c2019-09-04 18:35:26 +020031 template:
32 metadata:
33 labels:
34 app: {{ include "common.name" . }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010035 release: {{ include "common.release" . }}
sebdetd85e24c2019-09-04 18:35:26 +020036 spec:
37 initContainers:
38 - command:
Sylvain Desbureaux1694e1d2020-08-21 09:58:25 +020039 - /app/ready.py
sebdetd85e24c2019-09-04 18:35:26 +020040 args:
41 - --container-name
ChrisC2325efd2020-09-11 18:39:23 +020042 - clamp-mariadb
sebdetd85e24c2019-09-04 18:35:26 +020043 env:
44 - name: NAMESPACE
45 valueFrom:
46 fieldRef:
47 apiVersion: v1
48 fieldPath: metadata.namespace
Sylvain Desbureaux1694e1d2020-08-21 09:58:25 +020049 image: "{{ include "common.repository" . }}/{{ .Values.global.readinessImage }}"
sebdetd85e24c2019-09-04 18:35:26 +020050 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
51 name: {{ include "common.name" . }}-readiness
ChrisC2325efd2020-09-11 18:39:23 +020052{{ include "common.certInitializer.initContainer" . | indent 6 }}
sebdetd85e24c2019-09-04 18:35:26 +020053 containers:
54 # side car containers
Sylvain Desbureaux8c2a1622020-04-22 10:50:26 +020055 {{ if .Values.global.centralizedLoggingEnabled }}{{ include "common.log.sidecar" . | nindent 8 }}{{ end }}
56 # main container
sebdetd85e24c2019-09-04 18:35:26 +020057 - name: {{ include "common.name" . }}
58 image: "{{ include "common.repository" . }}/{{ .Values.image }}"
59 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ChrisC2325efd2020-09-11 18:39:23 +020060 {{- if .Values.global.aafEnabled }}
61 command:
62 - sh
63 workingDir: "/opt/clamp/"
sebdetd85e24c2019-09-04 18:35:26 +020064 args:
ChrisC2325efd2020-09-11 18:39:23 +020065 - -c
66 - |
67 export $(grep '^cadi_' {{ .Values.certInitializer.credsPath }}/org.onap.clamp.cred.props | xargs -0)
68 java -Djava.security.egd=file:/dev/./urandom -Xms256m -Xmx1g -jar ./app.jar
69 {{- else }}
70 args:
71 - ""
72 {{- end }}
sebdetd85e24c2019-09-04 18:35:26 +020073 ports:
74 - containerPort: {{ .Values.service.internalPort }}
75 # disable liveness probe when breakpoints set in debugger
76 # so K8s doesn't restart unresponsive container
77 {{- if eq .Values.liveness.enabled true }}
78 livenessProbe:
79 tcpSocket:
80 port: {{ .Values.service.internalPort }}
81 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
82 periodSeconds: {{ .Values.liveness.periodSeconds }}
83 {{ end -}}
84 readinessProbe:
85 tcpSocket:
86 port: {{ .Values.service.internalPort }}
87 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
88 periodSeconds: {{ .Values.readiness.periodSeconds }}
ChrisC2325efd2020-09-11 18:39:23 +020089 volumeMounts: {{ include "common.certInitializer.volumeMount" . | nindent 10 }}
Sylvain Desbureaux8c2a1622020-04-22 10:50:26 +020090 - name: logs
91 mountPath: {{ .Values.log.path }}
sebdetd85e24c2019-09-04 18:35:26 +020092 - mountPath: /opt/clamp/sdc-controllers-config.json
93 name: {{ include "common.fullname" . }}-config
94 subPath: sdc-controllers-config.json
ChrisC2325efd2020-09-11 18:39:23 +020095 - mountPath: /opt/clamp/application.properties
96 name: {{ include "common.fullname" . }}-config
97 subPath: application.properties
sebdetd85e24c2019-09-04 18:35:26 +020098 env:
JulienBe26df3202020-04-10 16:50:08 +020099 - name: MYSQL_USER
100 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "login") | indent 12 }}
101 - name: MYSQL_PASSWORD
102 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "password") | indent 12 }}
103 - name: MYSQL_DATABASE
104 value: {{ tpl .Values.db.databaseName .}}
sebdetd85e24c2019-09-04 18:35:26 +0200105 resources:
106{{ include "common.resources" . | indent 12 }}
107 {{- if .Values.nodeSelector }}
108 nodeSelector:
109{{ toYaml .Values.nodeSelector | indent 10 }}
110 {{- end -}}
111 {{- if .Values.affinity }}
112 affinity:
113{{ toYaml .Values.affinity | indent 10 }}
114 {{- end }}
ChrisC2325efd2020-09-11 18:39:23 +0200115 volumes: {{ include "common.certInitializer.volumes" . | nindent 8 }}
sebdetd85e24c2019-09-04 18:35:26 +0200116 - name: {{ include "common.fullname" . }}-config
117 configMap:
118 name: {{ include "common.fullname" . }}
119 items:
120 - key: sdc-controllers-config.json
121 path: sdc-controllers-config.json
ChrisC2325efd2020-09-11 18:39:23 +0200122 - key: application.properties
123 path: application.properties
Sylvain Desbureaux8c2a1622020-04-22 10:50:26 +0200124 - name: logs
sebdetd85e24c2019-09-04 18:35:26 +0200125 emptyDir: {}
Sylvain Desbureaux8c2a1622020-04-22 10:50:26 +0200126 {{ if .Values.global.centralizedLoggingEnabled }}{{ include "common.log.volumes" . | nindent 8 }}{{ end }}
sebdetd85e24c2019-09-04 18:35:26 +0200127 imagePullSecrets:
128 - name: "{{ include "common.namespace" . }}-docker-registry-key"