# 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:
  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
            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
  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
          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
          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: false
        port: 30071
    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
          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
          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
            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
          serviceNameList:
            - nausf-auth
          plmnSupportList:
            - mcc: 208
              mnc: 93
          groupId: ausfGroup001
