blob: bd126b810b857b5b88bf13f7f6d026b6a60db134 [file] [log] [blame]
Michael Mokryafae9972019-03-11 14:46:34 -05001apiVersion: extensions/v1beta1
2kind: Deployment
3metadata:
4 name: {{ include "common.fullname" . }}
5 namespace: {{ include "common.namespace" . }}
6 labels:
7 app: {{ include "common.name" . }}
8 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +01009 release: {{ include "common.release" . }}
Michael Mokryafae9972019-03-11 14:46:34 -050010 heritage: {{ .Release.Service }}
11spec:
12 replicas: {{ .Values.replicaCount }}
13 template:
14 metadata:
15 labels:
16 app: {{ include "common.name" . }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010017 release: {{ include "common.release" . }}
Michael Mokryafae9972019-03-11 14:46:34 -050018 spec:
Michael Mokry3b2647a2019-04-14 20:24:43 -050019 initContainers:
20 - command:
21 - /root/ready.py
22 args:
23 - --container-name
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010024 - {{ include "common.release" . }}-galera-config
Michael Mokry3b2647a2019-04-14 20:24:43 -050025 env:
26 - name: NAMESPACE
27 valueFrom:
28 fieldRef:
29 apiVersion: v1
30 fieldPath: metadata.namespace
31 image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
32 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
33 name: {{ include "common.name" . }}-readiness
Dominik Mizync88bcc92020-04-14 18:20:20 +020034 - command:
35 - sh
36 args:
37 - -c
jhhed6839f2020-05-08 12:28:27 -050038 - "export SQL_PASSWORD_BASE64=`echo -n ${SQL_PASSWORD} | base64`; cd /config-input && for PFILE in `ls -1 .`; do envsubst <${PFILE} >/config/${PFILE}; done"
Dominik Mizync88bcc92020-04-14 18:20:20 +020039 env:
40 - name: RESTSERVER_USER
41 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "restserver-creds" "key" "login") | indent 10 }}
42 - name: RESTSERVER_PASSWORD
43 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "restserver-creds" "key" "password") | indent 10 }}
44 - name: API_USER
45 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "api-creds" "key" "login") | indent 10 }}
46 - name: API_PASSWORD
47 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "api-creds" "key" "password") | indent 10 }}
jhhed6839f2020-05-08 12:28:27 -050048 - name: SQL_USER
49 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "login") | indent 10 }}
50 - name: SQL_PASSWORD
51 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "password") | indent 10 }}
Dominik Mizync88bcc92020-04-14 18:20:20 +020052 volumeMounts:
53 - mountPath: /config-input
54 name: pdpxconfig
55 - mountPath: /config
56 name: pdpxconfig-processed
57 image: "{{ .Values.global.envsubstImage }}"
58 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
59 name: {{ include "common.name" . }}-update-config
Michael Mokryafae9972019-03-11 14:46:34 -050060 containers:
61 - name: {{ include "common.name" . }}
62 image: "{{ include "common.repository" . }}/{{ .Values.image }}"
63 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
64 command: ["/opt/app/policy/pdpx/bin/policy-pdpx.sh"]
jhhbf7fb4d2019-08-07 16:54:41 -050065 args: ["/opt/app/policy/pdpx/etc/mounted/config.json"]
Michael Mokryafae9972019-03-11 14:46:34 -050066 ports:
67 - containerPort: {{ .Values.service.internalPort }}
68 # disable liveness probe when breakpoints set in debugger
69 # so K8s doesn't restart unresponsive container
70 {{- if eq .Values.liveness.enabled true }}
71 livenessProbe:
72 tcpSocket:
73 port: {{ .Values.service.internalPort }}
74 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
75 periodSeconds: {{ .Values.liveness.periodSeconds }}
76 {{ end -}}
77 readinessProbe:
78 tcpSocket:
79 port: {{ .Values.service.internalPort }}
80 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
81 periodSeconds: {{ .Values.readiness.periodSeconds }}
82 volumeMounts:
83 - mountPath: /etc/localtime
84 name: localtime
85 readOnly: true
86 - mountPath: /opt/app/policy/pdpx/etc/mounted
Dominik Mizync88bcc92020-04-14 18:20:20 +020087 name: pdpxconfig-processed
88 emptyDir:
89 medium: Memory
Michael Mokryafae9972019-03-11 14:46:34 -050090 resources:
91{{ include "common.resources" . | indent 12 }}
92 {{- if .Values.nodeSelector }}
93 nodeSelector:
94{{ toYaml .Values.nodeSelector | indent 10 }}
95 {{- end -}}
96 {{- if .Values.affinity }}
97 affinity:
98{{ toYaml .Values.affinity | indent 10 }}
99 {{- end }}
100 volumes:
101 - name: localtime
102 hostPath:
103 path: /etc/localtime
104 - name: pdpxconfig
105 configMap:
106 name: {{ include "common.fullname" . }}-configmap
107 defaultMode: 0755
Dominik Mizync88bcc92020-04-14 18:20:20 +0200108 - name: pdpxconfig-processed
109 emptyDir:
110 medium: Memory
Michael Mokryafae9972019-03-11 14:46:34 -0500111 imagePullSecrets:
112 - name: "{{ include "common.namespace" . }}-docker-registry-key"