# Copyright 2020-present Open Networking Foundation
#
# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0

images:
  tags:
    init: docker.io/omecproject/pod-init:1.0.0
    amf: registry.aetherproject.org/omecproject/5gc-amf:onf-master-latest
    nrf: registry.aetherproject.org/omecproject/5gc-nrf:onf-master-latest
    smf: registry.aetherproject.org/omecproject/5gc-smf:onf-master-latest
    ausf: registry.aetherproject.org/omecproject/5gc-ausf:onf-master-latest
    nssf: registry.aetherproject.org/omecproject/5gc-nssf:onf-master-latest
    pcf: registry.aetherproject.org/omecproject/5gc-pcf:onf-master-latest
    udr: registry.aetherproject.org/omecproject/5gc-udr:onf-master-latest
    udm: registry.aetherproject.org/omecproject/5gc-udm:onf-master-latest
    webui: registry.aetherproject.org/omecproject/5gc-webui:onf-master-latest
  pullPolicy: IfNotPresent
  # Optionally specify an array of imagePullSecrets.
  # Secrets must be manually created in the namespace.
  pullSecrets:
    - name: aether.registry

resources:
  enabled: false
  amf:
    requests:
      cpu: 2
      memory: 1Gi
    limits:
      cpu: 2
      memory: 1Gi
  nrf:
    requests:
      cpu: 2
      memory: 1Gi
    limits:
      cpu: 2
      memory: 1Gi
  smf:
    requests:
      cpu: 2
      memory: 1Gi
    limits:
      cpu: 2
      memory: 1Gi
  ausf:
    requests:
      cpu: 2
      memory: 1Gi
    limits:
      cpu: 2
      memory: 1Gi
  nssf:
    requests:
      cpu: 2
      memory: 1Gi
    limits:
      cpu: 2
      memory: 1Gi
  pcf:
    requests:
      cpu: 2
      memory: 1Gi
    limits:
      cpu: 2
      memory: 1Gi
  udr:
    requests:
      cpu: 2
      memory: 1Gi
    limits:
      cpu: 2
      memory: 1Gi
  udm:
    requests:
      cpu: 2
      memory: 1Gi
    limits:
      cpu: 2
      memory: 1Gi
  webui:
    requests:
      cpu: 1
      memory: 1Gi
    limits:
      cpu: 1
      memory: 1Gi

mongodb:
  deploy: true
  fullnameOverride: mongodb
  persistence:
    enabled: false
  auth:
    enabled: false
  serviceAccount:
    create: false
  #clusterDomain: cluster.local
  #architecture: replicaset
  #replicaCount: 3

config:
  useExistingConfigMap: false
  coreDump:
    enabled: false
    path: /tmp/coredump
  mongodb:
    name: free5gc
    url: mongodb://mongodb
  commonCfgFiles:
    free5GC.conf:
      logger:
        # network function
        AMF:
          debugLevel: info
          ReportCaller: false
        SMF:
          debugLevel: info
          ReportCaller: false
        UDR:
          debugLevel: info
          ReportCaller: false
        UDM:
          debugLevel: info
          ReportCaller: false
        NRF:
          debugLevel: info
          ReportCaller: false
        PCF:
          debugLevel: info
          ReportCaller: false
        AUSF:
          debugLevel: info
          ReportCaller: false
        N3IWF:
          debugLevel: info
          ReportCaller: false
      # library
        NAS:
          debugLevel: info
          ReportCaller: false
        FSM:
          debugLevel: info
          ReportCaller: false
        NGAP:
          debugLevel: info
          ReportCaller: false
        NamfComm:
          debugLevel: info
          ReportCaller: false
        NamfEventExposure:
          debugLevel: info
          ReportCaller: false
        NsmfPDUSession:
          debugLevel: info
          ReportCaller: false
        NudrDataRepository:
          debugLevel: info
          ReportCaller: false
        OpenApi:
          debugLevel: info
          ReportCaller: false
        Aper:
          debugLevel: info
          ReportCaller: false
        CommonConsumerTest:
          debugLevel: info
          ReportCaller: false
      # webui
        WEBUI:
          debugLevel: info
          ReportCaller: false
  webui:
    deploy: true
    podAnnotations:
      field.cattle.io/workloadMetrics: '[{"path":"/metrics","port":9089,"schema":"HTTP"}]'
    prometheus:
      port: 9089
      nodePort:
        enabled: false
        port: 30084
    urlport:
      port: 5000
      nodePort:
        enabled: false
        port: 35000
    ingress:
      enabled: false
      hostname: free5gc.local
      path: /
      pathType: Prefix
      # extraHosts:
        # - host: free5gc.local
        #   path: /
    cfgFiles:
      # https://github.com/free5gc/free5gc/blob/main/config/webuicfg.yaml
      webuicfg.conf:
        info:
          version: 1.0.0
          description: WebUI initial local configuration
        configuration: {}
  udm:
    deploy: true
    podAnnotations:
      field.cattle.io/workloadMetrics: '[{"path":"/metrics","port":9089,"schema":"HTTP"}]'
    prometheus:
      port: 9089
      nodePort:
        enabled: false
        port: 30084
    sbi:
      port: 29503
      nodePort:
        enabled: false
        port: 30074
    cfgFiles:
      # https://github.com/free5gc/free5gc/blob/main/config/udmcfg.yaml
      udmcfg.conf:
        info:
          version: 1.0.0
          description: UDM initial local configuration
        configuration:
          nrfUri: http://nrf:29510
          serviceNameList:
            - nudm-sdm
            - nudm-uecm
            - nudm-ueau
            - nudm-ee
            - nudm-pp
          sbi:
            scheme: http
            bindingIPv4: "0.0.0.0"
            registerIPv4: udm
            tls:
              log: free5gc/udmsslkey.log
              pem: free5gc/support/TLS/udm.pem
              key: free5gc/support/TLS/udm.key
          udrclient:
            scheme: http
            ipv4Addr: udr
            port: 29504
          nrfclient:
            scheme: http
            ipv4Addr: nrf
            port: 29510
  udr:
    deploy: true
    podAnnotations:
      field.cattle.io/workloadMetrics: '[{"path":"/metrics","port":9089,"schema":"HTTP"}]'
    prometheus:
      port: 9089
      nodePort:
        enabled: false
        port: 30084
    sbi:
      port: 29504
      nodePort:
        enabled: false
        port: 30074
    cfgFiles:
      # https://github.com/free5gc/free5gc/blob/main/config/udrcfg.yaml
      udrcfg.conf:
        info:
          version: 1.0.0
          description: UDR initial local configuration
        configuration:
          nrfUri: http://nrf:29510
          sbi:
            scheme: http
            bindingIPv4: "0.0.0.0"
            registerIPv4: udr
  pcf:
    deploy: true
    podAnnotations:
      field.cattle.io/workloadMetrics: '[{"path":"/metrics","port":9089,"schema":"HTTP"}]'
    prometheus:
      port: 9089
      nodePort:
        enabled: false
        port: 30084
    sbi:
      port: 29507
      nodePort:
        enabled: false
        port: 30077
    cfgFiles:
      # https://github.com/free5gc/free5gc/blob/main/config/pcfcfg.yaml
      pcfcfg.conf:
        info:
          version: 1.0.0
          description: PCF initial local configuration
        configuration:
          pcfName: PCF
          nrfUri: http://nrf:29510
          sbi:
            scheme: http
            bindingIPv4: "0.0.0.0"
            registerIPv4: pcf
          defaultBdtRefId: BdtPolicyId-
          serviceList:
            - serviceName: npcf-am-policy-control
            - serviceName: npcf-smpolicycontrol
              suppFeat: 3fff
            - serviceName: npcf-bdtpolicycontrol
            - serviceName: npcf-policyauthorization
              suppFeat: 3
            - serviceName: npcf-eventexposure
            - serviceName: npcf-ue-policy-control
  nssf:
    deploy: true
    podAnnotations:
      field.cattle.io/workloadMetrics: '[{"path":"/metrics","port":9089,"schema":"HTTP"}]'
    prometheus:
      port: 9089
      nodePort:
        enabled: false
        port: 30084
    sbi:
      port: 29531
      nodePort:
        enabled: false
        port: 30081
    cfgFiles:
      # https://github.com/free5gc/free5gc/blob/main/config/nssfcfg.yaml
      nssfcfg.conf:
        info:
          version: 1.0.0
          description: NSSF initial local configuration
        configuration:
          nssfName: NSSF
          nrfUri: http://nrf:29510
          sbi:
            scheme: http
            bindingIPv4: "0.0.0.0"
            registerIPv4: nssf
          serviceNameList:
            - nnssf-nsselection
            - nnssf-nssaiavailability
          supportedPlmnList:
            - mcc: 208
              mnc: 93
          supportedNssaiInPlmnList:
            - plmnId:
                mcc: 208
                mnc: 93
              supportedSnssaiList:
                - sst: 1
                  sd: "010203"
          nsiList:
            - snssai:
                sst: 1
                sd: "010203"
              nsiInformationList:
                - nrfId: http://nrf:29510/nnrf-nfm/v1/nf-instances
                  nsiId: 22
  amf:
    deploy: true
    podAnnotations:
      field.cattle.io/workloadMetrics: '[{"path":"/metrics","port":9089,"schema":"HTTP"}]'
    prometheus:
      port: 9089
      nodePort:
        enabled: false
        port: 30084
    sbi:
      port: 29518
      nodePort:
        enabled: false
        port: 30088
    ngapp:
      port: 38412
      nodePort:
        enabled: true
        port: 30071
        ngapIpList:
            - "0.0.0.0"
    cfgFiles:
      # https://github.com/free5gc/free5gc/blob/main/config/amfcfg.yaml
      amfcfg.conf:
        info:
          version: 1.0.0
          description: AMF initial local configuration
        configuration:
          amfName: AMF
          nrfUri: http://nrf:29510
          sbi:
            scheme: http
            bindingIPv4: "0.0.0.0"
            registerIPv4: amf
          serviceNameList:
            - namf-comm
            - namf-evts
            - namf-mt
            - namf-loc
            - namf-oam
          servedGuamiList:
            - plmnId:
                mcc: 208
                mnc: 93
              amfId: cafe00
          supportTaiList:
            - plmnId:
                mcc: 208
                mnc: 93
              tac: 1
          plmnSupportList:
            - plmnId:
                mcc: 208
                mnc: 93
              snssaiList:
                - sst: 1
                  sd: "010203"
          supportDnnList:
            - internet
          security:
            integrityOrder:
              - NIA2
            cipheringOrder:
              - NEA0
          networkName:
            full: free5GC
            short: free
          t3502: 720
          t3512: 3600
          non3gppDeregistrationTimer: 3240
  nrf:
    deploy: true
    podAnnotations:
      field.cattle.io/workloadMetrics: '[{"path":"/metrics","port":9089,"schema":"HTTP"}]'
    sbi:
      port: 29510
      nodePort:
        enabled: false
        port: 30070
    cfgFiles:
      # https://github.com/free5gc/free5gc/blob/main/config/nrfcfg.yaml
      nrfcfg.conf:
        info:
          version: 1.0.0
          description: NRF initial local configuration
        configuration:
          sbi:
            scheme: http
            bindingIPv4: "0.0.0.0"
            registerIPv4: nrf
          DefaultPlmnId:
            mcc: 208
            mnc: 93
          serviceNameList:
            - nnrf-nfm
            - nnrf-disc
  smf:
    deploy: true
    podAnnotations:
      field.cattle.io/workloadMetrics: '[{"path":"/metrics","port":9089,"schema":"HTTP"}]'
    n4:
      port: 8805
      nodePort:
        enabled: false
        port: 30021
    prometheus:
      port: 9089
      nodePort:
        enabled: false
        port: 30084
    sbi:
      port: 29502
      nodePort:
        enabled: false
        port: 30080
    cfgFiles:
      uerouting.conf:
        info:
          version: 1.0.0
          description: Routing information for UE
      # https://github.com/free5gc/free5gc/blob/main/config/smfcfg.yaml
      smfcfg.conf:
        info:
          version: 1.0.0
          description: SMF initial local configuration
        configuration:
          smfName: SMF
          nrfUri: http://nrf:29510
          sbi:
            scheme: http
            bindingIPv4: "0.0.0.0"
            registerIPv4: smf
            tls:
              key: gofree5gc/support/TLS/smf.key
              pem: gofree5gc/support/TLS/smf.pem
          serviceNameList:
            - nsmf-pdusession
            - nsmf-event-exposure
          snssai_info:
            - sNssai:
                sst: 1
                sd: "010203"
              dnnSmfInfoList:
                - dnn: internet
          userplane_information:
            up_nodes:
              gNB1:
                type: AN
              UPF:
                type: UPF
                node_id: upf
            links:
              - A: gNB1
                B: UPF
          dnn:
            internet:
              dns:
                ipv4: 8.8.8.8
          ue_subnet: 10.250.0.0/16
          ulcl: false
  ausf:
    deploy: true
    podAnnotations:
      field.cattle.io/workloadMetrics: '[{"path":"/metrics","port":9089,"schema":"HTTP"}]'
    prometheus:
      port: 9089
      nodePort:
        enabled: false
        port: 30084
    sbi:
      port: 29509
      nodePort:
        enabled: false
        port: 30082
    cfgFiles:
      # https://github.com/free5gc/free5gc/blob/main/config/ausfcfg.yaml
      ausfcfg.conf:
        info:
          version: 1.0.0
          description: AUSF initial local configuration
        configuration:
          nrfUri: http://nrf:29510
          sbi:
            scheme: http
            bindingIPv4: "0.0.0.0"
            registerIPv4: ausf
          serviceNameList:
            - nausf-auth
          plmnSupportList:
            - mcc: 208
              mnc: 93
          groupId: ausfGroup001
