blob: f0832add80fbfb1e257494e2f91973214d4f23eb [file] [log] [blame]
Jakub Latusek67f4e8d2020-10-21 13:36:29 +02001{{/*
pramodad6382f2018-03-28 22:32:00 +00002# Copyright © 2017 Amdocs, Bell Canada
Durgpal7ad40692018-08-03 07:28:36 +00003# Modifications Copyright © 2018 AT&T
pramodad6382f2018-03-28 22:32:00 +00004#
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 Latusek67f4e8d2020-10-21 13:36:29 +020016*/}}
Sylvain Desbureauxbe728882020-03-06 08:58:23 +010017
18apiVersion: apps/v1
sunil unnavab96a3912018-12-06 09:50:39 -050019kind: StatefulSet
Sylvain Desbureauxbe728882020-03-06 08:58:23 +010020metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
pramodad6382f2018-03-28 22:32:00 +000021spec:
Sylvain Desbureauxbe728882020-03-06 08:58:23 +010022 selector: {{- include "common.selectors" . | nindent 4 }}
23 serviceName: {{ include "common.servicename" . }}
pramodad6382f2018-03-28 22:32:00 +000024 replicas: {{ .Values.replicaCount }}
25 template:
Sylvain Desbureauxbe728882020-03-06 08:58:23 +010026 metadata: {{- include "common.templateMetadata" . | nindent 6 }}
pramodad6382f2018-03-28 22:32:00 +000027 spec:
28 initContainers:
29 - command:
Sylvain Desbureaux1694e1d2020-08-21 09:58:25 +020030 - /app/ready.py
pramodad6382f2018-03-28 22:32:00 +000031 args:
32 - --container-name
Dominic Lunanuova1ba2b252018-04-30 19:01:31 +000033 - {{ .Values.kafka.name }}
pramodad6382f2018-03-28 22:32:00 +000034 - --container-name
Dominic Lunanuova1ba2b252018-04-30 19:01:31 +000035 - {{ .Values.zookeeper.name }}
pramodad6382f2018-03-28 22:32:00 +000036 env:
37 - name: NAMESPACE
38 valueFrom:
39 fieldRef:
40 apiVersion: v1
41 fieldPath: metadata.namespace
Sylvain Desbureaux6b096542020-11-21 22:51:24 +010042 image: {{ include "repositoryGenerator.image.readiness" . }}
pramodad6382f2018-03-28 22:32:00 +000043 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
44 name: {{ include "common.name" . }}-readiness
Sylvain Desbureauxe5b6ffc2021-02-10 12:11:53 +010045 {{ include "common.certInitializer.initContainer" . | indent 6 | trim }}
46 {{- if .Values.global.aafEnabled }}
47 - name: {{ include "common.name" . }}-update-config
48 command:
49 - sh
50 args:
51 - -c
52 - |
53 export $(cat {{ .Values.certInitializer.appMountPath }}/local/mycreds.prop | xargs -0);
54 cd /config-input && for PFILE in `ls -1 .`; do envsubst <${PFILE} >/config/${PFILE}; done
55 volumeMounts: {{ include "common.certInitializer.volumeMount" . | nindent 8 }}
56 - mountPath: /config
57 name: jetty
58 - mountPath: /config-input
59 name: etc
60 image: {{ include "repositoryGenerator.image.envsubst" . }}
61 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
62 {{- end }}
pramodad6382f2018-03-28 22:32:00 +000063 containers:
su622ba3865652020-03-25 17:26:51 -040064 {{- if .Values.prometheus.jmx.enabled }}
65 - name: prometheus-jmx-exporter
Sylvain Desbureaux6b096542020-11-21 22:51:24 +010066 image: {{ include "repositoryGenerator.dockerHubRepository" . }}/{{ .Values.prometheus.jmx.image }}:{{ .Values.prometheus.jmx.imageTag }}
su622ba3865652020-03-25 17:26:51 -040067 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
68 command:
69 - java
70 - -XX:+UnlockExperimentalVMOptions
71 - -XX:+UseCGroupMemoryLimitForHeap
72 - -XX:MaxRAMFraction=1
73 - -XshowSettings:vm
74 - -jar
75 - jmx_prometheus_httpserver.jar
76 - {{ .Values.prometheus.jmx.port | quote }}
77 - /etc/jmx-kafka/jmx-mrservice-prometheus.yml
78 ports:
79 - containerPort: {{ .Values.prometheus.jmx.port }}
80 resources:
81 volumeMounts:
82 - name: jmx-config
83 mountPath: /etc/jmx-kafka
84 {{- end }}
pramodad6382f2018-03-28 22:32:00 +000085 - name: {{ include "common.name" . }}
Sylvain Desbureaux6b096542020-11-21 22:51:24 +010086 image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.image }}
pramodad6382f2018-03-28 22:32:00 +000087 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
Sylvain Desbureauxe5b6ffc2021-02-10 12:11:53 +010088 {{- if .Values.global.aafEnabled }}
89 command:
90 - sh
91 args:
92 - -c
93 - |
94 cp /jetty-config/ajsc-jetty.xml /appl/dmaapMR1/etc/
95 cp /jetty-config/cadi.properties {{ .Values.certInitializer.appMountPath }}/local/cadi.properties
96 /bin/sh /appl/startup.sh
97 {{- end }}
Sylvain Desbureauxbe728882020-03-06 08:58:23 +010098 ports: {{ include "common.containerPorts" . | nindent 10 }}
pramodad6382f2018-03-28 22:32:00 +000099 {{- if eq .Values.liveness.enabled true }}
100 livenessProbe:
101 tcpSocket:
Sylvain Desbureauxbe728882020-03-06 08:58:23 +0100102 port: {{ .Values.liveness.port }}
pramodad6382f2018-03-28 22:32:00 +0000103 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
104 periodSeconds: {{ .Values.liveness.periodSeconds }}
su622b8b763cd2019-10-14 15:37:37 -0400105 timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
Sylvain Desbureaux8fade992021-12-06 11:33:11 +0100106 successThreshold: {{ .Values.liveness.successThreshold }}
107 failureThreshold: {{ .Values.liveness.failureThreshold }}
108 {{ end }}
pramodad6382f2018-03-28 22:32:00 +0000109 readinessProbe:
110 tcpSocket:
Sylvain Desbureauxbe728882020-03-06 08:58:23 +0100111 port: {{ .Values.readiness.port }}
pramodad6382f2018-03-28 22:32:00 +0000112 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
113 periodSeconds: {{ .Values.readiness.periodSeconds }}
su622b8b763cd2019-10-14 15:37:37 -0400114 timeoutSeconds: {{ .Values.readiness.timeoutSeconds }}
Sylvain Desbureaux8fade992021-12-06 11:33:11 +0100115 successThreshold: {{ .Values.readiness.successThreshold }}
116 failureThreshold: {{ .Values.readiness.failureThreshold }}
117 startupProbe:
118 tcpSocket:
119 port: {{ .Values.startup.port }}
120 initialDelaySeconds: {{ .Values.startup.initialDelaySeconds }}
121 periodSeconds: {{ .Values.startup.periodSeconds }}
122 timeoutSeconds: {{ .Values.startup.timeoutSeconds }}
123 successThreshold: {{ .Values.startup.successThreshold }}
124 failureThreshold: {{ .Values.startup.failureThreshold }}
sunil unnava49aa92d2018-10-17 16:25:50 -0400125 env:
126 - name: enableCadi
efiacore62958b2019-09-27 16:54:36 +0100127 value: "{{ .Values.global.aafEnabled }}"
Sylvain Desbureauxe5b6ffc2021-02-10 12:11:53 +0100128 volumeMounts: {{ include "common.certInitializer.volumeMount" . | nindent 10 }}
pramodad6382f2018-03-28 22:32:00 +0000129 - mountPath: /etc/localtime
130 name: localtime
131 readOnly: true
132 - mountPath: /appl/dmaapMR1/bundleconfig/etc/appprops/MsgRtrApi.properties
133 subPath: MsgRtrApi.properties
134 name: appprops
su622bfdce6592019-08-08 00:28:29 -0400135 - mountPath: /appl/dmaapMR1/bundleconfig/etc/logback.xml
136 subPath: logback.xml
137 name: logback
pramodad6382f2018-03-28 22:32:00 +0000138 - mountPath: /appl/dmaapMR1/etc/keyfile
139 subPath: mykey
140 name: mykey
Sylvain Desbureauxf596a2d2021-06-30 15:14:32 +0200141 {{- if .Values.global.aafEnabled }}
Sylvain Desbureauxe5b6ffc2021-02-10 12:11:53 +0100142 - mountPath: /appl/dmaapMR1/etc/runner-web.xml
143 subPath: runner-web.xml
144 name: etc
145 - mountPath: /appl/dmaapMR1/bundleconfig/etc/sysprops/sys-props.properties
146 subPath: sys-props.properties
147 name: sys-props
148 - mountPath: /jetty-config
149 name: jetty
Sylvain Desbureauxf596a2d2021-06-30 15:14:32 +0200150 {{- end }}
Sylvain Desbureauxbe728882020-03-06 08:58:23 +0100151 resources: {{ include "common.resources" . | nindent 12 }}
farida azmy13388ba2021-03-17 11:33:28 +0200152 serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
Sylvain Desbureauxe5b6ffc2021-02-10 12:11:53 +0100153 volumes: {{ include "common.certInitializer.volumes" . | nindent 8 }}
pramodad6382f2018-03-28 22:32:00 +0000154 - name: localtime
155 hostPath:
156 path: /etc/localtime
157 - name: appprops
158 configMap:
159 name: {{ include "common.fullname" . }}-msgrtrapi-prop-configmap
Sylvain Desbureauxe5b6ffc2021-02-10 12:11:53 +0100160 - name: etc
161 configMap:
162 name: {{ include "common.fullname" . }}-etc
su622bfdce6592019-08-08 00:28:29 -0400163 - name: logback
164 configMap:
165 name: {{ include "common.fullname" . }}-logback-xml-configmap
su622ba3865652020-03-25 17:26:51 -0400166 {{- if .Values.prometheus.jmx.enabled }}
167 - name: jmx-config
168 configMap:
169 name: {{ include "common.fullname" . }}-prometheus-configmap
170 {{- end }}
pramodad6382f2018-03-28 22:32:00 +0000171 - name: mykey
172 secret:
173 secretName: {{ include "common.fullname" . }}-secret
Sylvain Desbureauxe5b6ffc2021-02-10 12:11:53 +0100174 - name: sys-props
175 configMap:
176 name: {{ include "common.fullname" . }}-sys-props
177 - name: jetty
178 emptyDir: {}
pramodad6382f2018-03-28 22:32:00 +0000179 imagePullSecrets:
180 - name: "{{ include "common.namespace" . }}-docker-registry-key"