blob: 80eaf761e8609a684bf1e62067faa5ec3f62ceff [file] [log] [blame]
rameshiyer273c3402d2021-09-21 15:14:39 +01001{{/*
2# ============LICENSE_START=======================================================
3# Copyright (C) 2021 Nordix Foundation. All rights reserved.
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=========================================================
19*/}}
20
21apiVersion: apps/v1
22kind: Deployment
23metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
24spec:
25 selector: {{- include "common.selectors" . | nindent 4 }}
26 replicas: {{ .Values.replicaCount }}
27 template:
28 metadata: {{- include "common.templateMetadata" . | nindent 6 }}
29 spec:
30 initContainers:
31 - command:
32 - sh
33 args:
34 - -c
35 - "cd /config-input && for PFILE in `ls -1`; do envsubst <${PFILE} >/config/${PFILE}; done"
36 volumeMounts:
37 - mountPath: /config-input
38 name: cl-http-ppnt-config
39 - mountPath: /config
40 name: cl-http-ppnt-config-processed
41 image: {{ include "repositoryGenerator.image.envsubst" . }}
42 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
43 name: {{ include "common.name" . }}-update-config
44{{ include "common.certInitializer.initContainer" . | indent 6 }}
45 containers:
46 - name: {{ include "common.name" . }}
47 image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.image }}
48 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
49{{- if .Values.global.aafEnabled }}
50 command: ["sh","-c"]
51 args: ["source {{ .Values.certInitializer.credsPath }}/.ci;\
52 /opt/app/policy/clamp/bin/http-participant.sh /opt/app/policy/clamp/etc/mounted/HttpParticipantParameters.yaml"]
53{{- else }}
54 command: ["/opt/app/policy/clamp/bin/http-participant.sh"]
55 args: ["/opt/app/policy/clamp/etc/mounted/HttpParticipantParameters.yaml"]
56 env:
57 - name: KEYSTORE_PASSWD
58 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "keystore-password" "key" "password") | indent 12 }}
59 - name: TRUSTSTORE_PASSWD
60 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "truststore-password" "key" "password") | indent 12 }}
61{{- end }}
62 volumeMounts:
63{{ include "common.certInitializer.volumeMount" . | indent 10 }}
64 - mountPath: /etc/localtime
65 name: localtime
66 readOnly: true
67 - mountPath: /opt/app/policy/clamp/etc/mounted
68 name: cl-http-ppnt-config-processed
69 resources:
70{{ include "common.resources" . }}
71 {{- if .Values.nodeSelector }}
72 nodeSelector:
73{{ toYaml .Values.nodeSelector | indent 10 }}
74 {{- end -}}
75 {{- if .Values.affinity }}
76 affinity:
77{{ toYaml .Values.affinity | indent 10 }}
78 {{- end }}
79 serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
80 volumes:
81{{ include "common.certInitializer.volumes" . | indent 8 }}
82 - name: localtime
83 hostPath:
84 path: /etc/localtime
85 - name: cl-http-ppnt-config
86 configMap:
87 name: {{ include "common.fullname" . }}-configmap
88 defaultMode: 0755
89 - name: cl-http-ppnt-config-processed
90 emptyDir:
91 medium: Memory
92 imagePullSecrets:
93 - name: "{{ include "common.namespace" . }}-docker-registry-key"