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

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

{{- if .Values.config.udr.deploy }}
{{ tuple "udr" . | include "5g-control-plane.service_account" }}
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: udr
  labels:
{{ tuple "udr" . | include "5g-control-plane.metadata_labels" | indent 4 }}
spec:
  replicas: 1
  #serviceName: udr-headless
  selector:
    matchLabels:
{{ tuple "udr" . | include "5g-control-plane.metadata_labels" | indent 6 }}
  template:
    metadata:
      labels:
{{ tuple "udr" . | include "5g-control-plane.metadata_labels" | indent 8 }}
    {{- with .Values.config.udr.podAnnotations }}
      annotations:
        {{- toYaml . | nindent 8 }}
    {{- end }}
    spec:
      serviceAccountName: udr
    {{- if hasKey .Values.images "pullSecrets" }}
      imagePullSecrets:
{{ toYaml .Values.images.pullSecrets | indent 8 }}
    {{- end }}
      initContainers:
      - name: wait-udr-module
        image: {{ .Values.images.repository }}{{ .Values.images.tags.init }}
        imagePullPolicy: {{ .Values.images.pullPolicy }}
        command: ['sh', '-c', 'until nslookup udr; do echo waiting for udr; sleep 4; done;']
    {{- if .Values.config.coreDump.enabled }}
    {{ tuple "udr" . | include "5g-control-plane.coredump_init" | indent 6 }}
    {{- end }}
      containers:
      - name: udr
        image: {{ .Values.images.repository }}{{ .Values.images.tags.udr }}
        imagePullPolicy: {{ .Values.images.pullPolicy }}
      {{- if .Values.config.coreDump.enabled }}
        securityContext:
          runAsUser: 0
      {{- end }}
        stdin: true
        tty: true
        command: ["/free5gc/script/udr-run.sh"]
        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: 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.udr | indent 10 }}
      {{- end }}
        volumeMounts:
        - name: run-script
          mountPath: /free5gc/script/udr-run.sh
          subPath: udr-run.sh
        - name: nf-config
          mountPath: /free5gc/config
      {{- if .Values.config.coreDump.enabled }}
        - name: coredump
          mountPath: /tmp/coredump
      {{- end }}
      volumes:
      - name: run-script
        configMap:
          name: udr
          defaultMode: 493
      - name: nf-config
        configMap:
          name: udr
          defaultMode: 493
    {{- if .Values.config.coreDump.enabled }}
      - name: host-rootfs
        hostPath:
          path: /
      - name: coredump
        hostPath:
          path: {{ .Values.config.coreDump.path }}
    {{- end }}
{{- end }}
