blob: 1ab53458956fce305b0bbed9a02fa802dd6cb722 [file] [log] [blame]
{{/*
# Copyright 2020-present Open Networking Foundation
# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
*/}}
{{- if .Values.config.pcf.deploy }}
{{ tuple "pcf" . | include "5g-control-plane.service_account" }}
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: pcf
labels:
{{ tuple "pcf" . | include "5g-control-plane.metadata_labels" | indent 4 }}
spec:
replicas: 1
serviceName: pcf-headless
selector:
matchLabels:
{{ tuple "pcf" . | include "5g-control-plane.metadata_labels" | indent 6 }}
template:
metadata:
labels:
{{ tuple "pcf" . | include "5g-control-plane.metadata_labels" | indent 8 }}
{{- with .Values.config.pcf.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- if .Values.nodeSelectors.enabled }}
nodeSelector:
{{ .Values.nodeSelectors.pcf.label }}: {{ .Values.nodeSelectors.pcf.value }}
{{- end }}
serviceAccountName: pcf
{{- if .Values.images.credentials }}
imagePullSecrets:
- name: {{ .Release.Name }}.registry
{{- end }}
initContainers:
- name: wait-nrf-module
image: {{ .Values.images.tags.init | quote }}
imagePullPolicy: {{ .Values.images.pullPolicy }}
command: ['sh', '-c', 'until nslookup nrf; do echo waiting for nrf; sleep 4; done;']
{{- if .Values.config.coreDump.enabled }}
{{ tuple "pcf" . | include "5g-control-plane.coredump_init" | indent 6 }}
{{- end }}
containers:
- name: pcf
image: {{ .Values.images.tags.pcf }}
imagePullPolicy: {{ .Values.images.pullPolicy }}
{{- if .Values.config.coreDump.enabled }}
securityContext:
runAsUser: 0
{{- end }}
stdin: true
tty: true
command: ["/opt/cp/scripts/pcf-run.sh"]
env:
- name: POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
{{- if .Values.resources.enabled }}
resources:
{{ toYaml .Values.resources.pcf | indent 10 }}
{{- end }}
volumeMounts:
- name: cp-script
mountPath: /opt/cp/scripts/pcf-run.sh
subPath: pcf-run.sh
- name: cp-config
mountPath: /free5gc/config
{{- if .Values.config.coreDump.enabled }}
- name: coredump
mountPath: /tmp/coredump
{{- end }}
volumes:
- name: cp-script
configMap:
name: pcf
defaultMode: 493
- name: cp-config
configMap:
name: pcf
defaultMode: 420
{{- if .Values.config.coreDump.enabled }}
- name: host-rootfs
hostPath:
path: /
- name: coredump
hostPath:
path: {{ .Values.config.coreDump.path }}
{{- end }}
{{- end }}