{{/*
Copyright 2019-present Open Networking Foundation

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/}}

{{- $configJson := index .Values.config.mme.cfgFiles "config.json" }}
{{- $configJsonS11 := index $configJson "s11" }}
{{- $configJsonS1ap := index $configJson "s1ap" }}
---
apiVersion: v1
kind: Service
metadata:
  name: mme
  labels:
{{ tuple "mme" . | include "omec-control-plane.metadata_labels" | indent 4 }}
spec:
  selector:
{{ tuple "mme" . | include "omec-control-plane.metadata_labels" | indent 4 }}
  type: ClusterIP
  ports:
    - name: s11
      port: {{ index $configJsonS11 "egtp_default_port" }}
      protocol: UDP
    - name: s6a
      port: 3868
      protocol: TCP
    - name: s1ap
      port: {{ index $configJsonS1ap "sctp_port" }}
      protocol: SCTP
---
apiVersion: v1
kind: Service
metadata:
  name: mme-headless
  labels:
{{ tuple "mme" . | include "omec-control-plane.metadata_labels" | indent 4 }}
spec:
  selector:
{{ tuple "mme" . | include "omec-control-plane.metadata_labels" | indent 4 }}
  clusterIP: None
  ports:
    - name: s11
      port: {{ index $configJsonS11 "egtp_default_port" }}
      protocol: UDP
    - name: s6a
      port: 3868
      protocol: TCP
    - name: s1ap
      port: {{ index $configJsonS1ap "sctp_port" }}
      protocol: SCTP
---
apiVersion: v1
kind: Service
metadata:
  name: mme-external
  labels:
{{ tuple "mme" . | include "omec-control-plane.metadata_labels" | indent 4 }}
spec:
  selector:
{{ tuple "mme" . | include "omec-control-plane.metadata_labels" | indent 4 }}
  type: NodePort
  ports:
  {{- if .Values.config.mme.s11.nodePort.enabled }}
    - name: s11
      port: {{ index $configJsonS11 "egtp_default_port" }}
      protocol: UDP
      nodePort: {{ .Values.config.mme.s11.nodePort.port }}
  {{- end }}
  {{- if .Values.config.mme.s6a.nodePort.enabled }}
    - name: s6a
      port: 3868
      protocol: TCP
      nodePort: {{ .Values.config.mme.s6a.nodePort.port }}
  {{- end }}
    - name: s1ap
      port: {{ index $configJsonS1ap "sctp_port" }}
      nodePort: {{ index $configJsonS1ap "sctp_port_external" }}
      protocol: SCTP
