blob: 2dbfa4ea4a20d0cf7779cbc7176d8a65df704513 [file] [log] [blame]
MichaelMorris74fda382019-03-17 09:36:27 +00001# Copyright © 2019 Nordix Foundation
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
Grzegorz-Lisd1c1f6a2020-07-29 12:22:40 +020014apiVersion: apps/v1
MichaelMorris74fda382019-03-17 09:36:27 +000015kind: Deployment
16metadata:
17 name: {{ include "common.fullname" . }}
18 namespace: {{ include "common.namespace" . }}
19 labels:
20 app: {{ include "common.fullname" . }}
21 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010022 release: {{ include "common.release" . }}
MichaelMorris74fda382019-03-17 09:36:27 +000023spec:
Grzegorz-Lisd1c1f6a2020-07-29 12:22:40 +020024 selector:
25 matchLabels:
26 app: {{ include "common.name" . }}
MichaelMorris74fda382019-03-17 09:36:27 +000027 replicas: {{ index .Values.replicaCount }}
28 minReadySeconds: {{ index .Values.minReadySeconds }}
29 strategy:
30 type: {{ index .Values.updateStrategy.type }}
31 rollingUpdate:
32 maxUnavailable: {{ index .Values.updateStrategy.maxUnavailable }}
33 maxSurge: {{ index .Values.updateStrategy.maxSurge }}
34 template:
35 metadata:
36 labels:
37 app: {{ include "common.name" . }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010038 release: {{ include "common.release" . }}
MichaelMorris74fda382019-03-17 09:36:27 +000039 spec:
Sylvain Desbureauxaadf5452020-03-18 18:13:51 +010040 initContainers: {{ include "so.certificate.container_importer" . | nindent 6 }}
MichaelMorris74fda382019-03-17 09:36:27 +000041 containers:
42 - name: {{ include "common.name" . }}
43 image: {{ include "common.repository" . }}/{{ .Values.image }}
44 resources:
45{{ include "common.resources" . | indent 12 }}
Sylvain Desbureauxaadf5452020-03-18 18:13:51 +010046 env:
Ramesh Parthasarathy95dc1c92020-02-05 17:02:28 +000047 - name: TRUSTSTORE
Ramesh Parthasarathy3ea400b2020-04-05 04:30:27 +000048 value: {{ .Values.global.client.certs.truststore }}
Ramesh Parthasarathy95dc1c92020-02-05 17:02:28 +000049 - name: TRUSTSTORE_PASSWORD
50 valueFrom:
51 secretKeyRef:
52 name: {{ .Release.Name}}-so-client-certs-secret
53 key: trustStorePassword
Ramesh Parthasarathy3ea400b2020-04-05 04:30:27 +000054 {{ if eq .Values.global.security.aaf.enabled true }}
Ramesh Parthasarathy95dc1c92020-02-05 17:02:28 +000055 - name: KEYSTORE
Ramesh Parthasarathy3ea400b2020-04-05 04:30:27 +000056 value: {{ .Values.global.client.certs.keystore }}
Ramesh Parthasarathy95dc1c92020-02-05 17:02:28 +000057 - name: KEYSTORE_PASSWORD
58 valueFrom:
59 secretKeyRef:
60 name: {{ .Release.Name}}-so-client-certs-secret
61 key: keyStorePassword
62 {{- end }}
MichaelMorris74fda382019-03-17 09:36:27 +000063 envFrom:
64 - configMapRef:
65 name: {{ include "common.fullname" . }}-configmap
66 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
Sylvain Desbureauxaadf5452020-03-18 18:13:51 +010067 volumeMounts: {{ include "so.certificate.volume-mounts" . | nindent 8 }}
MichaelMorris74fda382019-03-17 09:36:27 +000068 - name: logs
69 mountPath: /app/logs
70 - name: config
71 mountPath: /app/config
72 readOnly: true
Ramesh Parthasarathy3ea400b2020-04-05 04:30:27 +000073 - name: {{ include "common.fullname" . }}-truststore
74 mountPath: /app/client
75 readonly: true
MichaelMorris74fda382019-03-17 09:36:27 +000076 livenessProbe:
77 tcpSocket:
78 port: {{ index .Values.livenessProbe.port }}
79 initialDelaySeconds: {{ index .Values.livenessProbe.initialDelaySeconds}}
80 periodSeconds: {{ index .Values.livenessProbe.periodSeconds}}
81 successThreshold: {{ index .Values.livenessProbe.successThreshold}}
82 failureThreshold: {{ index .Values.livenessProbe.failureThreshold}}
83 ports:
84 - containerPort: {{ index .Values.containerPort }}
85 name: {{ .Values.service.portName }}
86 protocol: TCP
Sylvain Desbureauxaadf5452020-03-18 18:13:51 +010087 volumes: {{ include "so.certificate.volumes" . | nindent 6 }}
MichaelMorris74fda382019-03-17 09:36:27 +000088 - name: logs
89 emptyDir: {}
90 - name: config
91 configMap:
92 name: {{ include "common.fullname" . }}-app-configmap
Ramesh Parthasarathy3ea400b2020-04-05 04:30:27 +000093 - name: {{ include "common.fullname" . }}-truststore
94 secret:
95 secretName: {{ include "common.release" . }}-so-truststore-secret
MichaelMorris74fda382019-03-17 09:36:27 +000096 imagePullSecrets:
97 - name: "{{ include "common.namespace" . }}-docker-registry-key"