blob: 6829ffeb385bc2bd00de34c39a53b709484eceda [file] [log] [blame]
Badhrinath987e1d82020-11-20 13:23:58 -06001{{/*
2# Copyright 2020-present Open Networking Foundation
3
4# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
5*/}}
6
7{{- if .Values.config.pcf.deploy }}
8{{ tuple "pcf" . | include "5g-control-plane.service_account" }}
9---
10apiVersion: apps/v1
Hyunsun Moon6a651482021-02-26 01:46:44 -080011kind: Deployment
Badhrinath987e1d82020-11-20 13:23:58 -060012metadata:
13 name: pcf
14 labels:
15{{ tuple "pcf" . | include "5g-control-plane.metadata_labels" | indent 4 }}
16spec:
17 replicas: 1
Hyunsun Moon6a651482021-02-26 01:46:44 -080018 #serviceName: pcf-headless
Badhrinath987e1d82020-11-20 13:23:58 -060019 selector:
20 matchLabels:
21{{ tuple "pcf" . | include "5g-control-plane.metadata_labels" | indent 6 }}
22 template:
23 metadata:
24 labels:
25{{ tuple "pcf" . | include "5g-control-plane.metadata_labels" | indent 8 }}
26 {{- with .Values.config.pcf.podAnnotations }}
27 annotations:
28 {{- toYaml . | nindent 8 }}
29 {{- end }}
30 spec:
Badhrinath987e1d82020-11-20 13:23:58 -060031 serviceAccountName: pcf
Hyunsun Moon6a651482021-02-26 01:46:44 -080032 {{- if hasKey .Values.images "pullSecrets" }}
Badhrinath987e1d82020-11-20 13:23:58 -060033 imagePullSecrets:
Hyunsun Moon6a651482021-02-26 01:46:44 -080034{{ toYaml .Values.images.pullSecrets | indent 8 }}
Badhrinath987e1d82020-11-20 13:23:58 -060035 {{- end }}
36 initContainers:
Hyunsun Moon6a651482021-02-26 01:46:44 -080037 - name: wait-pcf-module
Badhrinath987e1d82020-11-20 13:23:58 -060038 image: {{ .Values.images.tags.init | quote }}
39 imagePullPolicy: {{ .Values.images.pullPolicy }}
Hyunsun Moon6a651482021-02-26 01:46:44 -080040 command: ['sh', '-c', 'until nslookup pcf; do echo waiting for pcf; sleep 4; done;']
Badhrinath987e1d82020-11-20 13:23:58 -060041 {{- if .Values.config.coreDump.enabled }}
42{{ tuple "pcf" . | include "5g-control-plane.coredump_init" | indent 6 }}
43 {{- end }}
44 containers:
45 - name: pcf
46 image: {{ .Values.images.tags.pcf }}
47 imagePullPolicy: {{ .Values.images.pullPolicy }}
48 {{- if .Values.config.coreDump.enabled }}
49 securityContext:
50 runAsUser: 0
51 {{- end }}
52 stdin: true
53 tty: true
Hyunsun Moon6a651482021-02-26 01:46:44 -080054 command: ["/free5gc/script/pcf-run.sh"]
Badhrinath987e1d82020-11-20 13:23:58 -060055 env:
Ajay Lotan Thakur45ea2f92021-06-25 03:07:59 -050056 - name: GRPC_GO_LOG_VERBOSITY_LEVEL
57 value: {{ .Values.config.grpc.golog_verbosity | quote }}
58 - name: GRPC_GO_LOG_SEVERITY_LEVEL
59 value: {{ .Values.config.grpc.severity | quote }}
60 - name: GRPC_TRACE
61 value: {{ .Values.config.grpc.trace | quote }}
62 - name: GRPC_VERBOSITY
63 value: {{ .Values.config.grpc.verbosity | quote }}
Badhrinath987e1d82020-11-20 13:23:58 -060064 - name: POD_IP
65 valueFrom:
66 fieldRef:
67 fieldPath: status.podIP
Ajay Lotan Thakur45ea2f92021-06-25 03:07:59 -050068 {{- if .Values.config.managedByConfigPod.enabled }}
69 - name: MANAGED_BY_CONFIG_POD
70 value: "true"
71 {{- end }}
Badhrinath987e1d82020-11-20 13:23:58 -060072 {{- if .Values.resources.enabled }}
73 resources:
74{{ toYaml .Values.resources.pcf | indent 10 }}
75 {{- end }}
76 volumeMounts:
Hyunsun Moon6a651482021-02-26 01:46:44 -080077 - name: run-script
78 mountPath: /free5gc/script/pcf-run.sh
Badhrinath987e1d82020-11-20 13:23:58 -060079 subPath: pcf-run.sh
Hyunsun Moon64f34352021-05-25 21:22:00 +000080 - name: nf-config
Hyunsun Moon858a1092021-05-25 21:51:56 +000081 mountPath: /free5gc/config
Badhrinath987e1d82020-11-20 13:23:58 -060082 {{- if .Values.config.coreDump.enabled }}
83 - name: coredump
84 mountPath: /tmp/coredump
85 {{- end }}
86 volumes:
Hyunsun Moon6a651482021-02-26 01:46:44 -080087 - name: run-script
Badhrinath987e1d82020-11-20 13:23:58 -060088 configMap:
89 name: pcf
90 defaultMode: 493
Hyunsun Moon6a651482021-02-26 01:46:44 -080091 - name: nf-config
Badhrinath987e1d82020-11-20 13:23:58 -060092 configMap:
93 name: pcf
Hyunsun Moon6a651482021-02-26 01:46:44 -080094 defaultMode: 493
Badhrinath987e1d82020-11-20 13:23:58 -060095 {{- if .Values.config.coreDump.enabled }}
96 - name: host-rootfs
97 hostPath:
98 path: /
99 - name: coredump
100 hostPath:
101 path: {{ .Values.config.coreDump.path }}
102 {{- end }}
103{{- end }}