blob: 8dd06e89244899d77ca22baa4ac8f9b7dfda0ef6 [file] [log] [blame]
Jakub Latusekd71d26c2020-10-21 13:36:29 +02001{{/*
jhhd4258672020-08-09 12:08:08 -05002# ============LICENSE_START=======================================================
3# Copyright (C) 2020 AT&T Intellectual Property.
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.
16#
17# SPDX-License-Identifier: Apache-2.0
18# ============LICENSE_END=========================================================
Jakub Latusekd71d26c2020-10-21 13:36:29 +020019*/}}
jhhd4258672020-08-09 12:08:08 -050020
Grzegorz-Lis4fad3022020-07-31 10:18:21 +020021apiVersion: apps/v1
mmis9cb50292018-09-19 00:31:35 +010022kind: Deployment
23metadata:
24 name: {{ include "common.fullname" . }}
25 namespace: {{ include "common.namespace" . }}
26 labels:
27 app: {{ include "common.name" . }}
28 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010029 release: {{ include "common.release" . }}
mmis9cb50292018-09-19 00:31:35 +010030 heritage: {{ .Release.Service }}
31spec:
Grzegorz-Lis4fad3022020-07-31 10:18:21 +020032 selector:
33 matchLabels:
34 app: {{ include "common.name" . }}
mmis9cb50292018-09-19 00:31:35 +010035 replicas: {{ .Values.replicaCount }}
36 template:
37 metadata:
38 labels:
39 app: {{ include "common.name" . }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010040 release: {{ include "common.release" . }}
mmis9cb50292018-09-19 00:31:35 +010041 spec:
Dominik Mizyn4aa534f2020-04-14 18:03:53 +020042 initContainers:
43 - command:
44 - sh
45 args:
46 - -c
47 - "cd /config-input && for PFILE in `ls -1`; do envsubst <${PFILE} >/config/${PFILE}; done"
48 env:
49 - name: RESTSERVER_USER
50 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "restserver-creds" "key" "login") | indent 10 }}
51 - name: RESTSERVER_PASSWORD
52 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "restserver-creds" "key" "password") | indent 10 }}
53 - name: API_USER
54 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "apiparameters-creds" "key" "login") | indent 10 }}
55 - name: API_PASSWORD
56 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "apiparameters-creds" "key" "password") | indent 10 }}
57 - name: PAP_USER
58 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "papparameters-creds" "key" "login") | indent 10 }}
59 - name: PAP_PASSWORD
60 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "papparameters-creds" "key" "password") | indent 10 }}
61 - name: SDCBE_USER
62 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "sdcbe-creds" "key" "login") | indent 10 }}
63 - name: SDCBE_PASSWORD
64 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "sdcbe-creds" "key" "password") | indent 10 }}
65 volumeMounts:
66 - mountPath: /config-input
67 name: distributionconfig-input
68 - mountPath: /config
69 name: distributionconfig
70 image: "{{ .Values.global.envsubstImage }}"
71 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
72 name: {{ include "common.name" . }}-update-config
jhhd4258672020-08-09 12:08:08 -050073{{ include "common.certInitializer.initContainer" . | indent 6 }}
mmis9cb50292018-09-19 00:31:35 +010074 containers:
75 - name: {{ include "common.name" . }}
Julien Barbot665fdc12018-10-22 16:49:07 +020076 image: "{{ include "common.repository" . }}/{{ .Values.image }}"
mmis9cb50292018-09-19 00:31:35 +010077 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
jhhd4258672020-08-09 12:08:08 -050078{{- if .Values.global.aafEnabled }}
79 command: ["bash","-c"]
80 args: ["source {{ .Values.certInitializer.credsPath }}/.ci;\
jhhd4258672020-08-09 12:08:08 -050081 /opt/app/policy/distribution/bin/policy-dist.sh /opt/app/policy/distribution/etc/mounted/config.json"]
82{{- else }}
mmis9cb50292018-09-19 00:31:35 +010083 command: ["/opt/app/policy/distribution/bin/policy-dist.sh"]
84 args: ["/opt/app/policy/distribution/etc/mounted/config.json"]
jhhd4258672020-08-09 12:08:08 -050085 env:
86 - name: KEYSTORE_PASSWD
87 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "keystore-password" "key" "password") | indent 12 }}
88 - name: TRUSTSTORE_PASSWD
89 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "truststore-password" "key" "password") | indent 12 }}
90{{- end }}
mmis9cb50292018-09-19 00:31:35 +010091 ports:
92 - containerPort: {{ .Values.service.internalPort }}
93 # disable liveness probe when breakpoints set in debugger
94 # so K8s doesn't restart unresponsive container
95 {{- if eq .Values.liveness.enabled true }}
96 livenessProbe:
97 tcpSocket:
98 port: {{ .Values.service.internalPort }}
99 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
100 periodSeconds: {{ .Values.liveness.periodSeconds }}
101 {{ end -}}
102 readinessProbe:
103 tcpSocket:
104 port: {{ .Values.service.internalPort }}
105 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
106 periodSeconds: {{ .Values.readiness.periodSeconds }}
107 volumeMounts:
jhhd4258672020-08-09 12:08:08 -0500108{{ include "common.certInitializer.volumeMount" . | indent 10 }}
mmis9cb50292018-09-19 00:31:35 +0100109 - mountPath: /etc/localtime
110 name: localtime
111 readOnly: true
112 - mountPath: /opt/app/policy/distribution/etc/mounted
113 name: distributionconfig
114 resources:
jhhd4258672020-08-09 12:08:08 -0500115{{ include "common.resources" . }}
mmis9cb50292018-09-19 00:31:35 +0100116 {{- if .Values.nodeSelector }}
117 nodeSelector:
118{{ toYaml .Values.nodeSelector | indent 10 }}
119 {{- end -}}
120 {{- if .Values.affinity }}
121 affinity:
122{{ toYaml .Values.affinity | indent 10 }}
123 {{- end }}
124 volumes:
jhhd4258672020-08-09 12:08:08 -0500125{{ include "common.certInitializer.volumes" . | indent 8 }}
mmis9cb50292018-09-19 00:31:35 +0100126 - name: localtime
127 hostPath:
128 path: /etc/localtime
Dominik Mizyn4aa534f2020-04-14 18:03:53 +0200129 - name: distributionconfig-input
mmis9cb50292018-09-19 00:31:35 +0100130 configMap:
131 name: {{ include "common.fullname" . }}-configmap
132 defaultMode: 0755
Dominik Mizyn4aa534f2020-04-14 18:03:53 +0200133 - name: distributionconfig
134 emptyDir:
135 medium: Memory
mmis9cb50292018-09-19 00:31:35 +0100136 imagePullSecrets:
137 - name: "{{ include "common.namespace" . }}-docker-registry-key"