blob: 2714ef0af692fcd505227bed16642afdb50addbf [file] [log] [blame]
badhri854c028b32021-11-03 18:24:05 -05001{{/*
2# Copyright 2020-present Open Networking Foundation
3
4# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
5*/}}
6
7{{- if .Values.config.udm.deploy }}
8{{ tuple "udm" . | include "5g-control-plane.service_account" }}
9---
10apiVersion: apps/v1
11kind: Deployment
12metadata:
13 name: udm
14 labels:
15{{ tuple "udm" . | include "5g-control-plane.metadata_labels" | indent 4 }}
16spec:
17 replicas: 1
18 #serviceName: udm-headless
19 selector:
20 matchLabels:
21{{ tuple "udm" . | include "5g-control-plane.metadata_labels" | indent 6 }}
22 template:
23 metadata:
24 labels:
25{{ tuple "udm" . | include "5g-control-plane.metadata_labels" | indent 8 }}
26 {{- with .Values.config.udm.podAnnotations }}
27 annotations:
28 {{- toYaml . | nindent 8 }}
29 {{- end }}
30 spec:
31 serviceAccountName: udm
32 {{- if hasKey .Values.images "pullSecrets" }}
33 imagePullSecrets:
34{{ toYaml .Values.images.pullSecrets | indent 8 }}
35 {{- end }}
36 initContainers:
37 - name: wait-udm-module
38 image: {{ .Values.images.tags.init | quote }}
39 imagePullPolicy: {{ .Values.images.pullPolicy }}
40 command: ['sh', '-c', 'until nslookup udm; do echo waiting for udm; sleep 4; done;']
41 - name: wait-udr-module
42 image: {{ .Values.images.tags.init | quote }}
43 imagePullPolicy: {{ .Values.images.pullPolicy }}
44 command: ['sh', '-c', 'until nslookup udr; do echo waiting for udr; sleep 4; done;']
45 {{- if .Values.config.coreDump.enabled }}
46{{ tuple "udm" . | include "5g-control-plane.coredump_init" | indent 6 }}
47 {{- end }}
48 containers:
49 - name: udm
50 image: {{ .Values.images.tags.udm }}
51 imagePullPolicy: {{ .Values.images.pullPolicy }}
52 {{- if .Values.config.coreDump.enabled }}
53 securityContext:
54 runAsUser: 0
55 {{- end }}
56 stdin: true
57 tty: true
58 command: ["/free5gc/script/udm-run.sh"]
59 env:
60 - name: GRPC_GO_LOG_VERBOSITY_LEVEL
61 value: {{ .Values.config.grpc.golog_verbosity | quote }}
62 - name: GRPC_GO_LOG_SEVERITY_LEVEL
63 value: {{ .Values.config.grpc.severity | quote }}
64 - name: GRPC_TRACE
65 value: {{ .Values.config.grpc.trace | quote }}
66 - name: GRPC_VERBOSITY
67 value: {{ .Values.config.grpc.verbosity | quote }}
68 - name: POD_IP
69 valueFrom:
70 fieldRef:
71 fieldPath: status.podIP
72 {{- if .Values.config.managedByConfigPod.enabled }}
73 - name: MANAGED_BY_CONFIG_POD
74 value: "true"
75 {{- end }}
76 {{- if .Values.resources.enabled }}
77 resources:
78{{ toYaml .Values.resources.udm | indent 10 }}
79 {{- end }}
80 volumeMounts:
81 - name: run-script
82 mountPath: /free5gc/script/udm-run.sh
83 subPath: udm-run.sh
84 - name: nf-config
85 mountPath: /free5gc/config
86 {{- if .Values.config.coreDump.enabled }}
87 - name: coredump
88 mountPath: /tmp/coredump
89 {{- end }}
90 volumes:
91 - name: run-script
92 configMap:
93 name: udm
94 defaultMode: 493
95 - name: nf-config
96 configMap:
97 name: udm
98 defaultMode: 493
99 - name: config-dir
100 emptyDir: {}
101 {{- if .Values.config.coreDump.enabled }}
102 - name: host-rootfs
103 hostPath:
104 path: /
105 - name: coredump
106 hostPath:
107 path: {{ .Values.config.coreDump.path }}
108 {{- end }}
109{{- end }}