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

# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.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.tags.init | quote }}
        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.tags.smf }}
        imagePullPolicy: {{ .Values.images.pullPolicy }}
      {{- if .Values.config.coreDump.enabled }}
        securityContext:
          runAsUser: 0
      {{- end }}
        stdin: true
        tty: true
        command: ["/free5gc/script/smf-run.sh"]
        env:
        - name: POD_IP
          valueFrom:
            fieldRef:
              fieldPath: status.podIP
      {{- if .Values.resources.enabled }}
        resources:
{{ toYaml .Values.resources.smf | indent 10 }}
      {{- end }}
        volumeMounts:
        - name: run-script
          mountPath: /free5gc/script/smf-run.sh
          subPath: smf-run.sh
        - name: config-dir
          mountPath: /free5gc/config
        - name: common-config
          mountPath: /tmp/config/free5GC.conf
          subPath: free5GC.conf
        - name: nf-config
          mountPath: /tmp/config/uerouting.conf
          subPath: uerouting.conf
        - name: nf-config
          mountPath: /tmp/config/smfcfg.conf
          subPath: smfcfg.conf
      {{- if .Values.config.coreDump.enabled }}
        - name: coredump
          mountPath: /tmp/coredump
      {{- end }}
      volumes:
      - name: run-script
        configMap:
          name: smf
          defaultMode: 493
      - name: common-config
        configMap:
          name: common
          defaultMode: 493 
      - name: nf-config
        configMap:
          name: smf
          defaultMode: 493
      - name: config-dir
        emptyDir: {}
    {{- if .Values.config.coreDump.enabled }}
      - name: host-rootfs
        hostPath:
          path: /
      - name: coredump
        hostPath:
          path: {{ .Values.config.coreDump.path }}
    {{- end }}
{{- end }}
