blob: 35f8aacb40f05f78a50a6ff53822924be7740bfe [file] [log] [blame]
mmis95971132018-07-17 00:13:13 +01001# ============LICENSE_START=======================================================
2# Copyright (C) 2018 Ericsson. All rights reserved.
3# ================================================================================
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16# SPDX-License-Identifier: Apache-2.0
17# ============LICENSE_END=========================================================
18
19apiVersion: apps/v1beta1
20kind: StatefulSet
21metadata:
22 name: {{ include "common.fullname" . }}
23 namespace: {{ include "common.namespace" . }}
24 labels:
25 app: {{ include "common.name" . }}
26 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010027 release: {{ include "common.release" . }}
mmis95971132018-07-17 00:13:13 +010028 heritage: {{ .Release.Service }}
29spec:
30 serviceName: {{ include "common.servicename" . }}
31 replicas: {{ .Values.replicaCount }}
32 selector:
33 matchLabels:
34 app: {{ include "common.name" . }}
35 template:
36 metadata:
37 labels:
38 app: {{ include "common.name" . }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010039 release: {{ include "common.release" . }}
mmis95971132018-07-17 00:13:13 +010040 spec:
Dominik Mizynb8c44b42020-04-21 10:48:27 +020041 initContainers:
42 - command:
43 - sh
44 args:
45 - -c
46 - "export TRUSTSTORE_PASSWORD_BASE64=`echo -n ${TRUSTSTORE_PASSWORD} | base64`; cd /config-input && for PFILE in `ls -1`; do envsubst <${PFILE} >/config/${PFILE}; done"
47 env:
48 - name: TRUSTSTORE_PASSWORD
49 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "truststore-pass" "key" "password") | indent 10 }}
50 - name: RESTSERVER_USER
51 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "restserver-creds" "key" "login") | indent 10 }}
52 - name: RESTSERVER_PASSWORD
53 {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "restserver-creds" "key" "password") | indent 10 }}
54 volumeMounts:
55 - mountPath: /config-input
56 name: apexconfig-input
57 - mountPath: /config
58 name: apexconfig
59 image: "{{ .Values.global.envsubstImage }}"
60 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
61 name: {{ include "common.name" . }}-update-config
mmis95971132018-07-17 00:13:13 +010062 containers:
63 - name: {{ include "common.name" . }}
64 image: "{{ include "common.repository" . }}/{{ .Values.image }}"
65 command:
a.sreekumar7f4efaf2019-04-16 16:24:01 +000066 - /opt/app/policy/apex-pdp/bin/apexOnapPf.sh
mmis95971132018-07-17 00:13:13 +010067 - -c
a.sreekumar7f4efaf2019-04-16 16:24:01 +000068 - /home/apexuser/config/OnapPfConfig.json
mmis95971132018-07-17 00:13:13 +010069 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
70 ports:
71 - containerPort: {{ .Values.service.externalPort }}
72 {{- if eq .Values.liveness.enabled true }}
73 livenessProbe:
74 tcpSocket:
75 port: {{ .Values.service.externalPort }}
76 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
77 periodSeconds: {{ .Values.liveness.periodSeconds }}
78 {{- end }}
79 readinessProbe:
80 tcpSocket:
81 port: {{ .Values.service.externalPort }}
82 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
83 periodSeconds: {{ .Values.readiness.periodSeconds }}
84 env:
85 - name: REPLICAS
86 value: "{{ .Values.replicaCount }}"
87 volumeMounts:
88 - mountPath: /etc/localtime
89 name: localtime
90 readOnly: true
91 - mountPath: /var/log/onap
92 name: policy-logs
mmis0d92fb72018-09-19 12:44:35 +010093 - mountPath: /home/apexuser/config
mmis95971132018-07-17 00:13:13 +010094 name: apexconfig
mmis95971132018-07-17 00:13:13 +010095 resources:
Mandeep Khinda5e3f36a2018-09-24 15:25:42 +000096{{ include "common.resources" . | indent 12 }}
mmis95971132018-07-17 00:13:13 +010097 {{- if .Values.nodeSelector }}
98 nodeSelector:
99{{ toYaml .Values.nodeSelector | indent 10 }}
100 {{- end -}}
101 {{- if .Values.affinity }}
102 affinity:
103{{ toYaml .Values.affinity | indent 10 }}
104 {{- end }}
105 volumes:
106 - name: localtime
107 hostPath:
108 path: /etc/localtime
109 - name: policy-logs
110 emptyDir: {}
Dominik Mizynb8c44b42020-04-21 10:48:27 +0200111 - name: apexconfig-input
mmis95971132018-07-17 00:13:13 +0100112 configMap:
113 name: {{ include "common.fullname" . }}-configmap
mmis0d92fb72018-09-19 12:44:35 +0100114 defaultMode: 0755
Dominik Mizynb8c44b42020-04-21 10:48:27 +0200115 - name: apexconfig
116 emptyDir:
117 medium: Memory
mmis95971132018-07-17 00:13:13 +0100118 imagePullSecrets:
119 - name: "{{ include "common.namespace" . }}-docker-registry-key"