blob: f1d10e2c81d07665c97c90ff1806019dc669c0d4 [file] [log] [blame]
Sylvain Desbureaux47eb4d22020-12-10 12:15:27 +01001{{/*
Sylvain Desbureaux70070412020-11-09 21:58:48 +01002# Copyright (c) 2018 Amdocs, Bell Canada, AT&T
Sylvain Desbureaux5b651322020-12-07 15:34:15 +01003# Modifications Copyright (c) 2020 Nokia, Orange
Sylvain Desbureaux70070412020-11-09 21:58:48 +01004#
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.
Sylvain Desbureaux47eb4d22020-12-10 12:15:27 +010016*/}}
Sylvain Desbureaux70070412020-11-09 21:58:48 +010017
18apiVersion: apps/v1
19kind: Deployment
20metadata:
21 name: {{ include "common.fullname" . }}
22 namespace: {{ include "common.namespace" . }}
23 labels:
24 app: {{ include "common.name" . }}
25 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
26 release: {{ include "common.release" . }}
27 heritage: {{ .Release.Service }}
28spec:
29 selector:
30 matchLabels:
31 app: {{ include "common.name" . }}
32 replicas: {{ .Values.replicaCount }}
Rommel Pawar63db7162022-11-16 10:11:24 -080033 strategy:
34 type: {{ .Values.updateStrategy.type }}
35 {{- if (eq "RollingUpdate" .Values.updateStrategy.type) }}
36 rollingUpdate:
37 maxUnavailable: {{ .Values.updateStrategy.maxUnavailable }}
38 maxSurge: {{ .Values.updateStrategy.maxSurge }}
39 {{- end }}
Sylvain Desbureaux70070412020-11-09 21:58:48 +010040 template:
41 metadata:
42 labels:
43 app: {{ include "common.name" . }}
44 release: {{ include "common.release" . }}
45 name: {{ include "common.release" . }}
46 annotations:
47 checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
48 spec:
Rommel Pawar63db7162022-11-16 10:11:24 -080049 terminationGracePeriodSeconds: {{ .Values.service.terminationGracePeriodSeconds }}
Sylvain Desbureaux87f49af2020-12-15 11:56:51 +010050 initContainers: {{ include "common.certInitializer.initContainer" . | nindent 6 }}
Sylvain Desbureaux70070412020-11-09 21:58:48 +010051 - command:
52 - /app/ready.py
53 args:
54 - --container-name
55 - aai-resources
56 - --container-name
57 - aai-traversal
58 - --container-name
59 - aai-graphadmin
60 env:
61 - name: NAMESPACE
62 valueFrom:
63 fieldRef:
64 apiVersion: v1
65 fieldPath: metadata.namespace
Sylvain Desbureaux5b651322020-12-07 15:34:15 +010066 image: {{ include "repositoryGenerator.image.readiness" . }}
Sylvain Desbureaux70070412020-11-09 21:58:48 +010067 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
68 name: {{ include "common.name" . }}-readiness
leila8bd5bf32022-11-16 19:42:09 -050069 resources:
70 requests:
71 memory: {{ .Values.haproxy.initContainers.resources.memory }}
72 cpu: {{ .Values.haproxy.initContainers.resources.cpu }}
73 limits:
74 memory: {{ .Values.haproxy.initContainers.resources.memory }}
75 cpu: {{ .Values.haproxy.initContainers.resources.cpu }}
Sylvain Desbureaux70070412020-11-09 21:58:48 +010076 containers:
77 - name: {{ include "common.name" . }}
Sylvain Desbureaux5b651322020-12-07 15:34:15 +010078 image: "{{ include "repositoryGenerator.dockerHubRepository" . }}/{{ .Values.image }}"
Sylvain Desbureaux70070412020-11-09 21:58:48 +010079 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
80 volumeMounts:
81 - mountPath: /etc/localtime
82 name: localtime
83 readOnly: true
84 - mountPath: /dev/log
85 name: aai-service-log
86 - mountPath: /usr/local/etc/haproxy/haproxy.cfg
87 {{ if .Values.global.installSidecarSecurity }}
88 subPath: haproxy-pluggable-security.cfg
89 {{ else }}
90 subPath: haproxy.cfg
91 {{ end }}
92 name: haproxy-cfg
Sylvain Desbureaux87f49af2020-12-15 11:56:51 +010093 {{- include "common.certInitializer.volumeMount" . | nindent 8 }}
Sylvain Desbureaux70070412020-11-09 21:58:48 +010094 ports:
95 - containerPort: {{ .Values.service.internalPort }}
osk1146127fd7d82021-06-18 00:51:17 +020096 - containerPort: {{ .Values.service.internalPlainPort }}
leila8bd5bf32022-11-16 19:42:09 -050097 - containerPort: {{ .Values.metricsService.internalPort }}
Sylvain Desbureaux70070412020-11-09 21:58:48 +010098 # disable liveness probe when breakpoints set in debugger
99 # so K8s doesn't restart unresponsive container
100 {{- if eq .Values.liveness.enabled true }}
101 livenessProbe:
102 tcpSocket:
osk1146127fd7d82021-06-18 00:51:17 +0200103 port: {{ (eq "true" (include "common.needTLS" .)) | ternary .Values.service.internalPort .Values.service.internalPlainPort }}
Sylvain Desbureaux70070412020-11-09 21:58:48 +0100104 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
105 periodSeconds: {{ .Values.liveness.periodSeconds }}
106 {{ end -}}
107 readinessProbe:
108 httpGet:
109 path: /aai/util/echo
osk1146127fd7d82021-06-18 00:51:17 +0200110 port: {{ (eq "true" (include "common.needTLS" .)) | ternary .Values.service.internalPort .Values.service.internalPlainPort }}
111 #scheme: HTTPS
112 scheme: {{ (eq "true" (include "common.needTLS" .)) | ternary "HTTPS" "HTTP" }}
Sylvain Desbureaux70070412020-11-09 21:58:48 +0100113 httpHeaders:
114 - name: X-FromAppId
115 value: OOM_ReadinessCheck
116 {{ if .Values.global.installSidecarSecurity }}
117 - name: Authorization
118 value: Basic YWFpQGFhaS5vbmFwLm9yZzpkZW1vMTIzNDU2IQ==
119 {{ end }}
120 - name: X-TransactionId
121 value: OOM_ReadinessCheck_TID
122 - name: Accept
123 value: application/json
124 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
125 periodSeconds: {{ .Values.readiness.periodSeconds }}
126 resources:
127{{ include "common.resources" . }}
128 {{- if .Values.nodeSelector }}
129 nodeSelector:
130{{ toYaml .Values.nodeSelector | indent 8 }}
131 {{- end -}}
132 {{- if .Values.affinity }}
133 affinity:
134{{ toYaml .Values.affinity | indent 8 }}
135 {{- end }}
farida azmyd8937332021-03-09 12:20:42 +0200136 serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
Sylvain Desbureaux70070412020-11-09 21:58:48 +0100137 volumes:
138 - name: localtime
139 hostPath:
140 path: /etc/localtime
141 - name: aai-service-log
142 hostPath:
143 path: "/dev/log"
144 - name: haproxy-cfg
145 configMap:
146 name: aai-deployment-configmap
Sylvain Desbureaux87f49af2020-12-15 11:56:51 +0100147 {{ include "common.certInitializer.volumes" . | nindent 8 }}
Sylvain Desbureaux70070412020-11-09 21:58:48 +0100148 imagePullSecrets:
149 - name: "{{ include "common.namespace" . }}-docker-registry-key"