blob: cdbe90e474eff7300b0c63b3b249abbd72f57c4e [file] [log] [blame]
Jakub Latuseke0e8ca72020-10-21 13:36:29 +02001{{/*
Alexander Dehn9b797d62020-04-21 09:53:50 +00002# Copyright © 2020 highstreet technologies GmbH
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.
Jakub Latuseke0e8ca72020-10-21 13:36:29 +020015*/}}
Alexander Dehn9b797d62020-04-21 09:53:50 +000016
Alexander Dehn8789a722020-10-16 14:29:05 +000017apiVersion: apps/v1
Alexander Dehn9b797d62020-04-21 09:53:50 +000018kind: Deployment
19metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
20spec:
Alexander Dehn9b797d62020-04-21 09:53:50 +000021 replicas: {{ .Values.replicaCount }}
22 selector: {{- include "common.selectors" . | nindent 4 }}
23 template:
24 metadata: {{- include "common.templateMetadata" . | nindent 6 }}
25 spec:
Andreas Geissler2af50792023-03-27 17:11:27 +020026 initContainers:
Alexander Dehn9b797d62020-04-21 09:53:50 +000027 - name: {{ include "common.name" . }}-readiness
Sylvain Desbureauxcbc703c2020-11-19 17:52:07 +010028 image: {{ include "repositoryGenerator.image.readiness" . }}
Alexander Dehn9b797d62020-04-21 09:53:50 +000029 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
30 command:
Sylvain Desbureaux1694e1d2020-08-21 09:58:25 +020031 - /app/ready.py
Alexander Dehn9b797d62020-04-21 09:53:50 +000032 args:
33 - --container-name
34 - {{ .Values.config.sdncChartName }}
35 env:
36 - name: NAMESPACE
37 valueFrom:
38 fieldRef:
39 apiVersion: v1
40 fieldPath: metadata.namespace
Andreas Geissler47537432024-02-27 08:55:23 +010041 resources:
42 limits:
43 cpu: "100m"
Andreas Geissler8cbb3d92024-03-12 16:44:56 +010044 memory: "500Mi"
Andreas Geissler47537432024-02-27 08:55:23 +010045 requests:
46 cpu: "3m"
Andreas Geissler8cbb3d92024-03-12 16:44:56 +010047 memory: "20Mi"
Alexander Dehn9b797d62020-04-21 09:53:50 +000048
49 containers:
50 - name: {{ include "common.name" . }}
Sylvain Desbureauxcbc703c2020-11-19 17:52:07 +010051 image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.image }}
Alexander Dehn9b797d62020-04-21 09:53:50 +000052 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
53 ports: {{- include "common.containerPorts" . | indent 10 }}
54 # disable liveness probe when breakpoints set in debugger
55 # so K8s doesn't restart unresponsive container
56 {{ if .Values.liveness.enabled }}
57 livenessProbe:
58 tcpSocket:
Andreas Geissler2af50792023-03-27 17:11:27 +020059 port: {{ .Values.service.internalPort }}
Alexander Dehn9b797d62020-04-21 09:53:50 +000060 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
61 periodSeconds: {{ .Values.liveness.periodSeconds }}
62 {{ end }}
63 readinessProbe:
64 tcpSocket:
Andreas Geissler2af50792023-03-27 17:11:27 +020065 port: {{ .Values.service.internalPort }}
Alexander Dehn9b797d62020-04-21 09:53:50 +000066 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
67 periodSeconds: {{ .Values.readiness.periodSeconds }}
68 env:
69 - name: WEBPROTOCOL
Andreas Geissler2af50792023-03-27 17:11:27 +020070 value: {{ .Values.config.webProtocol }}
Alexander Dehn9b797d62020-04-21 09:53:50 +000071 - name: WEBPORT
Andreas Geissler2af50792023-03-27 17:11:27 +020072 value : {{ .Values.config.webPort | quote }}
Alexander Dehn9b797d62020-04-21 09:53:50 +000073 - name: SDNRPROTOCOL
Andreas Geissler2af50792023-03-27 17:11:27 +020074 value : {{ .Values.config.sdnrProtocol }}
Alexander Dehn9b797d62020-04-21 09:53:50 +000075 - name: SDNRHOST
Andreas Geissler2af50792023-03-27 17:11:27 +020076 value : {{ .Values.config.sdnrHost }}.{{ include "common.namespace" . }}
Alexander Dehn9b797d62020-04-21 09:53:50 +000077 - name: SDNRPORT
Andreas Geissler2af50792023-03-27 17:11:27 +020078 value : {{ .Values.config.sdnrPort | quote }}
Alexander Dehn8789a722020-10-16 14:29:05 +000079 {{ if .Values.config.transportpce.enabled }}
80 - name: TRPCEURL
81 value: {{ .Values.config.transportpce.transportpceUrl }}
82 {{ end }}
83 {{ if .Values.config.topologyserver.enabled }}
84 - name: TOPOURL
85 value: {{ .Values.config.topologyserver.topologyserverUrl }}
86 - name: TILEURL
87 value: {{ .Values.config.topologyserver.tileserverUrl }}
88 {{ end }}
demskeq8b43e92c2021-02-12 15:43:48 +010089 - name: ENABLE_OAUTH
90 value: "{{ .Values.config.oauth.enabled | default "false" }}"
91 - name: ENABLE_ODLUX_RBAC
92 value: "{{ .Values.config.oauth.odluxRbac.enabled | default "false" }}"
demskeq895bf73a2023-05-09 12:31:07 +000093 - name: SDNRWEBSOCKETPORT
94 value: "{{ .Values.sdnrWebsocketPort | default "8182" }}"
Andreas Geissler2af50792023-03-27 17:11:27 +020095 volumeMounts:
Alexander Dehn9b797d62020-04-21 09:53:50 +000096 - mountPath: /etc/localtime
97 name: localtime
98 readOnly: true
99
100 resources: {{ include "common.resources" . | nindent 12 }}
Satoshi Fujii54bfd172021-07-04 16:39:41 +0000101 {{- if .Values.nodeSelector }}
102 nodeSelector: {{ toYaml .Values.nodeSelector | nindent 8 }}
103 {{- end }}
104 {{- if .Values.affinity }}
105 affinity: {{ toYaml .Values.affinity | nindent 8 }}
106 {{- end }}
farida azmy32c5ed82021-08-04 14:46:09 +0200107 serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
Andreas Geissler2af50792023-03-27 17:11:27 +0200108 volumes:
Alexander Dehn9b797d62020-04-21 09:53:50 +0000109 - name: localtime
110 hostPath:
111 path: /etc/localtime
112
Andreas Geisslerbd0d31a2024-03-20 09:51:32 +0100113 {{- include "common.imagePullSecrets" . | nindent 6 }}