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

# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
*/}}

{{- if .Values.config.pcf.deploy }}

{{- if not .Values.config.useExistingConfigMap -}}
{{- $pcfcfg := index .Values.config.pcf.cfgFiles "pcfcfg.conf" }}
{{- $sbi := index $pcfcfg.configuration "sbi" }}
{{- $config := index $pcfcfg "configuration" }}

{{- if not (hasKey $pcfcfg "logger") -}}
{{- $_ := .Values.config.logger | set $pcfcfg "logger" -}}
{{- end }}

{{- if not (hasKey $sbi "port") -}}
{{- $_ := .Values.config.pcf.sbi.port | set $sbi "port" -}}
{{- end }}

{{- if not (hasKey $config "mongodb") -}}
{{- $_ := dict "name" .Values.config.mongodb.name "url" .Values.config.mongodb.url | set $config "mongodb" -}}
{{- end }}
{{- end }}

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: pcf
  labels:
{{ tuple "pcf" . | include "5g-control-plane.metadata_labels" | indent 4 }}
data:
  pcf-run.sh: |
{{ tuple "bin/_pcf-run.sh.tpl" . | include "5g-control-plane.template" | indent 4 }}
{{- if not .Values.config.useExistingConfigMap -}}
{{- range $key, $value := .Values.config.pcf.cfgFiles }}
  {{ $key }}: |-
{{ toYaml $value | indent 4 }}
{{- end }}
{{- end }}
{{- end }}
