blob: 23fab7a6e06425a6e94c7f375f88f61e36ca27d1 [file] [log] [blame]
Jakub Latusekfcf67842020-10-21 13:36:29 +02001{{/*
sebdetd85e24c2019-09-04 18:35:26 +02002# Copyright © 2017 Amdocs, Bell Canada
3# Modifications Copyright © 2018 AT&T
4#
5# Licensed under the Apache License, Version 2.0 (the "License");
6# you may not use this file except in compliance with the License.
7# You may obtain a copy of the License at
8#
9# http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing, software
12# distributed under the License is distributed on an "AS IS" BASIS,
13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
Jakub Latusekfcf67842020-10-21 13:36:29 +020016*/}}
sebdetd85e24c2019-09-04 18:35:26 +020017
Magdalena_Biernacka7d0dcbe2020-07-12 23:21:43 +020018apiVersion: apps/v1
sebdetd85e24c2019-09-04 18:35:26 +020019kind: Deployment
20metadata:
21 name: {{ include "common.fullname" . }}
22 namespace: {{ include "common.namespace" . }}
23 labels:
24 app: {{ include "common.name" . }}
25 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010026 release: {{ include "common.release" . }}
sebdetd85e24c2019-09-04 18:35:26 +020027 heritage: {{ .Release.Service }}
28spec:
29 replicas: {{ .Values.replicaCount }}
Magdalena_Biernacka7d0dcbe2020-07-12 23:21:43 +020030 selector:
31 matchLabels:
32 app: {{ include "common.name" . }}
sebdetd85e24c2019-09-04 18:35:26 +020033 template:
34 metadata:
35 labels:
36 app: {{ include "common.name" . }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010037 release: {{ include "common.release" . }}
sebdetd85e24c2019-09-04 18:35:26 +020038 spec:
39 initContainers:
40 - command:
Sylvain Desbureaux1694e1d2020-08-21 09:58:25 +020041 - /app/ready.py
sebdetd85e24c2019-09-04 18:35:26 +020042 args:
43 - --container-name
ChrisC2325efd2020-09-11 18:39:23 +020044 - clamp-mariadb
sebdetd85e24c2019-09-04 18:35:26 +020045 env:
46 - name: NAMESPACE
47 valueFrom:
48 fieldRef:
49 apiVersion: v1
50 fieldPath: metadata.namespace
Sylvain Desbureaux1694e1d2020-08-21 09:58:25 +020051 image: "{{ include "common.repository" . }}/{{ .Values.global.readinessImage }}"
sebdetd85e24c2019-09-04 18:35:26 +020052 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
53 name: {{ include "common.name" . }}-readiness
ChrisC2325efd2020-09-11 18:39:23 +020054{{ include "common.certInitializer.initContainer" . | indent 6 }}
sebdetd85e24c2019-09-04 18:35:26 +020055 containers:
56 # side car containers
Sylvain Desbureaux8c2a1622020-04-22 10:50:26 +020057 {{ if .Values.global.centralizedLoggingEnabled }}{{ include "common.log.sidecar" . | nindent 8 }}{{ end }}
58 # main container
sebdetd85e24c2019-09-04 18:35:26 +020059 - name: {{ include "common.name" . }}
60 image: "{{ include "common.repository" . }}/{{ .Values.image }}"
61 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ChrisC2325efd2020-09-11 18:39:23 +020062 {{- if .Values.global.aafEnabled }}
63 command:
64 - sh
65 workingDir: "/opt/clamp/"
sebdetd85e24c2019-09-04 18:35:26 +020066 args:
ChrisC2325efd2020-09-11 18:39:23 +020067 - -c
68 - |
69 export $(grep '^cadi_' {{ .Values.certInitializer.credsPath }}/org.onap.clamp.cred.props | xargs -0)
sebdet5a13fbf2020-10-13 09:37:19 +020070 java -Djava.security.egd=file:/dev/./urandom -XX:MinRAMPercentage=50 -XX:MaxRAMPercentage=75 -jar ./app.jar
ChrisC2325efd2020-09-11 18:39:23 +020071 {{- else }}
72 args:
73 - ""
74 {{- end }}
sebdetd85e24c2019-09-04 18:35:26 +020075 ports:
76 - containerPort: {{ .Values.service.internalPort }}
77 # disable liveness probe when breakpoints set in debugger
78 # so K8s doesn't restart unresponsive container
79 {{- if eq .Values.liveness.enabled true }}
80 livenessProbe:
81 tcpSocket:
82 port: {{ .Values.service.internalPort }}
83 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
84 periodSeconds: {{ .Values.liveness.periodSeconds }}
85 {{ end -}}
86 readinessProbe:
87 tcpSocket:
88 port: {{ .Values.service.internalPort }}
89 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
90 periodSeconds: {{ .Values.readiness.periodSeconds }}
ChrisC2325efd2020-09-11 18:39:23 +020091 volumeMounts: {{ include "common.certInitializer.volumeMount" . | nindent 10 }}
Sylvain Desbureaux8c2a1622020-04-22 10:50:26 +020092 - name: logs
93 mountPath: {{ .Values.log.path }}
sebdetd85e24c2019-09-04 18:35:26 +020094 - mountPath: /opt/clamp/sdc-controllers-config.json
95 name: {{ include "common.fullname" . }}-config
96 subPath: sdc-controllers-config.json
ChrisC2325efd2020-09-11 18:39:23 +020097 - mountPath: /opt/clamp/application.properties
98 name: {{ include "common.fullname" . }}-config
99 subPath: application.properties
sebdetd85e24c2019-09-04 18:35:26 +0200100 env:
JulienBe26df3202020-04-10 16:50:08 +0200101 - name: MYSQL_USER
102 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "login") | indent 12 }}
103 - name: MYSQL_PASSWORD
104 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "password") | indent 12 }}
105 - name: MYSQL_DATABASE
106 value: {{ tpl .Values.db.databaseName .}}
sebdetd85e24c2019-09-04 18:35:26 +0200107 resources:
108{{ include "common.resources" . | indent 12 }}
109 {{- if .Values.nodeSelector }}
110 nodeSelector:
111{{ toYaml .Values.nodeSelector | indent 10 }}
112 {{- end -}}
113 {{- if .Values.affinity }}
114 affinity:
115{{ toYaml .Values.affinity | indent 10 }}
116 {{- end }}
ChrisC2325efd2020-09-11 18:39:23 +0200117 volumes: {{ include "common.certInitializer.volumes" . | nindent 8 }}
sebdetd85e24c2019-09-04 18:35:26 +0200118 - name: {{ include "common.fullname" . }}-config
119 configMap:
120 name: {{ include "common.fullname" . }}
121 items:
122 - key: sdc-controllers-config.json
123 path: sdc-controllers-config.json
ChrisC2325efd2020-09-11 18:39:23 +0200124 - key: application.properties
125 path: application.properties
Sylvain Desbureaux8c2a1622020-04-22 10:50:26 +0200126 - name: logs
sebdetd85e24c2019-09-04 18:35:26 +0200127 emptyDir: {}
Sylvain Desbureaux8c2a1622020-04-22 10:50:26 +0200128 {{ if .Values.global.centralizedLoggingEnabled }}{{ include "common.log.volumes" . | nindent 8 }}{{ end }}
sebdetd85e24c2019-09-04 18:35:26 +0200129 imagePullSecrets:
130 - name: "{{ include "common.namespace" . }}-docker-registry-key"