{{/*
# Copyright 2020-present Open Networking Foundation

# SPDX-License-Identifier: Apache-2.0
*/}}

{{- if .Values.config.smf.deploy }}
{{ tuple "smf" . | include "5g-control-plane.service_account" }}
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: smf
  labels:
{{ tuple "smf" . | include "5g-control-plane.metadata_labels" | indent 4 }}
spec:
  replicas: 1
  #serviceName: smf-headless
  selector:
    matchLabels:
{{ tuple "smf" . | include "5g-control-plane.metadata_labels" | indent 6 }}
  template:
    metadata:
      labels:
{{ tuple "smf" . | include "5g-control-plane.metadata_labels" | indent 8 }}
    {{- with .Values.config.smf.podAnnotations }}
      annotations:
        helm.sh/hook: pre-install
        helm.sh/hook-weight: "5"
        {{- toYaml . | nindent 8 }}
    {{- end }}
    spec:
      serviceAccountName: smf
    {{- if hasKey .Values.images "pullSecrets" }}
      imagePullSecrets:
{{ toYaml .Values.images.pullSecrets | indent 8 }}
    {{- end }}
      initContainers:
      - name: wait-smf-module
        image: {{ .Values.images.repository }}{{ .Values.images.tags.init }}
        imagePullPolicy: {{ .Values.images.pullPolicy }}
        command: ['sh', '-c', 'until nslookup smf; do echo waiting for smf; sleep 4; done;']
    {{- if .Values.config.coreDump.enabled }}
    {{ tuple "smf" . | include "5g-control-plane.coredump_init" | indent 6 }}
    {{- end }}
      containers:
      - name: smf
        image: {{ .Values.images.repository }}{{ .Values.images.tags.smf }}
        imagePullPolicy: {{ .Values.images.pullPolicy }}
      {{- if .Values.config.coreDump.enabled }}
        securityContext:
          runAsUser: 0
      {{- end }}
        stdin: true
        tty: true
        command: [ {{ .Values.config.imagePath }}/script/smf-run.sh ]
        command: [ "/bin/bash", "-c" ]
        args:
        - "cat {{ .Values.config.imagePath }}/config/smfcfg.conf && GOTRACEBACK=crash {{ .Values.config.imagePath }}/smf/smf -smfcfg {{ .Values.config.imagePath }}/config/smfcfg.conf -uerouting {{ .Values.config.imagePath }}/uerouting/uerouting.conf"
        env:
        - name: GRPC_GO_LOG_VERBOSITY_LEVEL
          value: {{ .Values.config.grpc.golog_verbosity | quote }}
        - name: GRPC_GO_LOG_SEVERITY_LEVEL
          value: {{ .Values.config.grpc.severity | quote }}
        - name: GRPC_TRACE
          value: {{ .Values.config.grpc.trace | quote }}
        - name: GRPC_VERBOSITY
          value: {{ .Values.config.grpc.verbosity | quote }}
        - name: PFCP_PORT_UPF
          value: {{ .Values.config.smf.upfPort | quote }}
        - name: POD_IP
          valueFrom:
            fieldRef:
              fieldPath: status.podIP
      {{- if .Values.config.managedByConfigPod.enabled }}
        - name: MANAGED_BY_CONFIG_POD 
          value: "true"
      {{- end }}
      {{- if .Values.resources.enabled }}
        resources:
{{ toYaml .Values.resources.smf | indent 10 }}
      {{- end }}
        volumeMounts:
        - name: run-script
          mountPath: {{ .Values.config.imagePath }}/script/smf-run.sh
          subPath: smf-run.sh
        - name: nf-config
          mountPath: {{ .Values.config.imagePath }}/uerouting
        - name: nf-config
          mountPath: {{ .Values.config.imagePath }}/config
      {{- if .Values.config.coreDump.enabled }}
        - name: coredump
          mountPath: /tmp/coredump
      {{- end }}
      volumes:
      - name: run-script
        configMap:
          name: smf
          defaultMode: 493
      - name: nf-config
        configMap:
          name: smf
          defaultMode: 493
    {{- if .Values.config.coreDump.enabled }}
      - name: host-rootfs
        hostPath:
          path: /
      - name: coredump
        hostPath:
          path: {{ .Values.config.coreDump.path }}
    {{- end }}
{{- end }}
