├── .github ├── ISSUE_TEMPLATE │ ├── bugreport.yaml │ └── feature_request.yaml ├── pull_request_template.md └── workflows │ ├── lint-test.yaml │ └── release.yml ├── .gitignore ├── LICENSE ├── README.md ├── README.md.gotmpl ├── charts ├── free5gc-amf │ ├── Chart.yaml │ ├── README.md │ ├── resources │ │ └── config │ │ │ └── amfcfg.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-ngap.yaml │ │ ├── service-sbi.yaml │ │ └── serviceaccount.yaml │ └── values.yaml ├── free5gc-ausf │ ├── Chart.yaml │ ├── README.md │ ├── resources │ │ └── config │ │ │ └── ausfcfg.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-sbi.yaml │ │ └── serviceaccount.yaml │ └── values.yaml ├── free5gc-chf │ ├── Chart.yaml │ ├── README.md │ ├── resources │ │ └── config │ │ │ └── chfcfg.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-sbi.yaml │ │ └── serviceaccount.yaml │ └── values.yaml ├── free5gc-nrf │ ├── Chart.yaml │ ├── README.md │ ├── resources │ │ └── config │ │ │ └── nrfcfg.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-sbi.yaml │ │ └── serviceaccount.yaml │ └── values.yaml ├── free5gc-nssf │ ├── Chart.yaml │ ├── README.md │ ├── resources │ │ └── config │ │ │ └── nssfcfg.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-sbi.yaml │ │ └── serviceaccount.yaml │ └── values.yaml ├── free5gc-pcf │ ├── Chart.yaml │ ├── README.md │ ├── resources │ │ └── config │ │ │ └── pcfcfg.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-sbi.yaml │ │ └── serviceaccount.yaml │ └── values.yaml ├── free5gc-smf │ ├── Chart.yaml │ ├── README.md │ ├── resources │ │ └── config │ │ │ ├── smfcfg.yaml │ │ │ └── uerouting.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap-uerouting.yaml │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-pfcp.yaml │ │ ├── service-sbi.yaml │ │ └── serviceaccount.yaml │ └── values.yaml ├── free5gc-udm │ ├── Chart.yaml │ ├── README.md │ ├── resources │ │ └── config │ │ │ └── udmcfg.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-sbi.yaml │ │ └── serviceaccount.yaml │ └── values.yaml ├── free5gc-udr │ ├── Chart.yaml │ ├── README.md │ ├── resources │ │ └── config │ │ │ └── udrcfg.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-sbi.yaml │ │ └── serviceaccount.yaml │ └── values.yaml ├── free5gc-upf │ ├── Chart.yaml │ ├── README.md │ ├── resources │ │ ├── config │ │ │ └── upfcfg.yaml │ │ └── upf-iptables.sh │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap-entrypoint.yaml │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-gtpu.yaml │ │ ├── service-pfcp.yaml │ │ └── serviceaccount.yaml │ └── values.yaml ├── free5gc-webui │ ├── Chart.yaml │ ├── README.md │ ├── resources │ │ └── config │ │ │ └── webuicfg.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── ingress.yaml │ │ ├── service.yaml │ │ └── serviceaccount.yaml │ └── values.yaml ├── free5gc │ ├── Chart.yaml │ ├── README.md │ └── values.yaml ├── iperf3 │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── deployment.yaml │ │ ├── service.yaml │ │ └── service_udp.yaml │ └── values.yaml ├── jitsi │ ├── Chart.yaml │ ├── LICENSE │ ├── README.md │ ├── charts │ │ └── prosody │ │ │ ├── .helmignore │ │ │ ├── Chart.yaml │ │ │ ├── README.md │ │ │ ├── templates │ │ │ ├── NOTES.txt │ │ │ ├── _helpers.tpl │ │ │ ├── envs-configmap.yaml │ │ │ ├── envs-secret.yaml │ │ │ ├── ingress.yaml │ │ │ ├── service.yaml │ │ │ ├── serviceaccount.yaml │ │ │ ├── statefulset.yaml │ │ │ └── tests │ │ │ │ └── test-connection.yaml │ │ │ └── values.yaml │ ├── docs │ │ ├── index.yaml │ │ └── robots.txt │ ├── templates │ │ ├── NOTES.txt │ │ ├── _helpers.tpl │ │ ├── common-configmap.yaml │ │ ├── ingress.yaml │ │ ├── jibri │ │ │ ├── _helper.tpl │ │ │ ├── configmap.yaml │ │ │ ├── deployment.yaml │ │ │ ├── persistentvolumeclaim.yaml │ │ │ ├── service.yaml │ │ │ └── xmpp-secret.yaml │ │ ├── jicofo │ │ │ ├── _helper.tpl │ │ │ ├── configmap.yaml │ │ │ ├── deployment.yaml │ │ │ └── xmpp-secret.yaml │ │ ├── jvb │ │ │ ├── _helper.tpl │ │ │ ├── configmap.yaml │ │ │ ├── deployment.yaml │ │ │ ├── metrics-prometheus.yaml │ │ │ ├── metrics-service.yaml │ │ │ ├── service.yaml │ │ │ └── xmpp-secret.yaml │ │ ├── serviceaccount.yaml │ │ ├── tests │ │ │ └── test-connection.yaml │ │ └── web │ │ │ ├── _helper.tpl │ │ │ ├── configmap.yaml │ │ │ ├── deployment.yaml │ │ │ └── service.yaml │ └── values.yaml ├── oai-enb │ ├── Chart.yaml │ ├── Makefile │ ├── README.md │ ├── resources │ │ └── enb.conf │ ├── templates │ │ ├── NOTES.txt │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── registry-secret.yaml │ │ └── statefulset.yaml │ └── values.yaml ├── oai-gnb │ ├── Chart.yaml │ ├── README.md │ ├── resources │ │ └── gnb.sa.tdd.conf │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── service.yaml │ │ └── statefulset.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs-amf │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ └── config │ │ │ └── amf.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-metrics.yaml │ │ ├── service-ngap.yaml │ │ ├── service-sbi.yaml │ │ ├── serviceaccount.yaml │ │ ├── servicemonitor.yaml │ │ └── vmservicescrape.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs-ausf │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ └── config │ │ │ └── ausf.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-sbi.yaml │ │ └── serviceaccount.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs-bsf │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ └── config │ │ │ └── bsf.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-sbi.yaml │ │ └── serviceaccount.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs-hss │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ └── config │ │ │ ├── diameter-hss.conf │ │ │ └── hss.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap-diameter.yaml │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-frdi.yaml │ │ └── serviceaccount.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs-mme │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ └── config │ │ │ ├── diameter-mme.conf │ │ │ └── mme.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap-diameter.yaml │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-frdi.yaml │ │ ├── service-gtpc.yaml │ │ ├── service-s1ap.yaml │ │ └── serviceaccount.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs-nrf │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ └── config │ │ │ └── nrf.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-sbi.yaml │ │ └── serviceaccount.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs-nssf │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ └── config │ │ │ └── nssf.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-sbi.yaml │ │ └── serviceaccount.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs-pcf │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ └── config │ │ │ └── pcf.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-metrics.yaml │ │ ├── service-sbi.yaml │ │ ├── serviceaccount.yaml │ │ ├── servicemonitor.yaml │ │ └── vmservicescrape.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs-pcrf │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ └── config │ │ │ ├── diameter-pcrf.conf │ │ │ └── pcrf.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap-diameter.yaml │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-frdi.yaml │ │ └── serviceaccount.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs-scp │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ └── config │ │ │ └── scp.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-sbi.yaml │ │ └── serviceaccount.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs-sgwc │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ └── config │ │ │ └── sgwc.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-gtpc.yaml │ │ ├── service-pfcp.yaml │ │ └── serviceaccount.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs-sgwu │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ └── config │ │ │ └── sgwu.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-gtpu.yaml │ │ ├── service-pfcp.yaml │ │ └── serviceaccount.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs-smf │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ └── config │ │ │ ├── diameter-smf.conf │ │ │ └── smf.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap-diameter.yaml │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-frdi.yaml │ │ ├── service-gtpc.yaml │ │ ├── service-gtpu.yaml │ │ ├── service-metrics.yaml │ │ ├── service-pfcp.yaml │ │ ├── service-sbi.yaml │ │ ├── serviceaccount.yaml │ │ ├── servicemonitor.yaml │ │ └── vmservicescrape.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs-udm │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ └── config │ │ │ └── udm.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-sbi.yaml │ │ └── serviceaccount.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs-udr │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ └── config │ │ │ └── udr.yaml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-sbi.yaml │ │ └── serviceaccount.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs-upf │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ ├── config │ │ │ └── upf.yaml │ │ └── k8s-entrypoint.sh │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap-entrypoint.yaml │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-gtpu.yaml │ │ ├── service-metrics.yaml │ │ ├── service-pfcp.yaml │ │ ├── serviceaccount.yaml │ │ ├── servicemonitor.yaml │ │ └── vmservicescrape.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs-webui │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── ci │ │ └── test-install-values.yaml │ ├── resources │ │ └── add_admin.sh │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── ingress.yaml │ │ ├── service-http.yaml │ │ └── serviceaccount.yaml │ ├── values.schema.json │ └── values.yaml ├── open5gs │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── templates │ │ ├── _helpers.tpl │ │ └── populate-deployment.yaml │ ├── values-5g.yaml │ └── values.yaml ├── packetrusher │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ └── config │ │ │ └── config.yml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── service-gtpu.yaml │ │ ├── service-ngap.yaml │ │ └── serviceaccount.yaml │ └── values.yaml ├── srs-epc │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ ├── epc.conf │ │ └── user_db.csv │ ├── templates │ │ ├── NOTES.txt │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── mme-svc.yaml │ │ ├── registry-secret.yaml │ │ └── statefulset.yaml │ └── values.yaml ├── srs-ue │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ ├── enb.conf │ │ ├── rr.conf │ │ └── ue.conf │ ├── templates │ │ ├── NOTES.txt │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── registry-secret.yaml │ │ └── statefulset.yaml │ └── values.yaml ├── srsran-4g-zmq │ ├── Chart.yaml │ ├── Makefile │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ ├── enb.conf │ │ ├── rr.conf │ │ └── ue.conf │ ├── templates │ │ ├── NOTES.txt │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── registry-secret.yaml │ │ └── statefulset.yaml │ ├── values.schema.json │ └── values.yaml ├── srsran-4g │ ├── Chart.yaml │ ├── Makefile │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ ├── enb.conf │ │ └── rr.conf │ ├── templates │ │ ├── NOTES.txt │ │ ├── _helpers.tpl │ │ ├── configmap.yaml │ │ ├── registry-secret.yaml │ │ └── statefulset.yaml │ └── values.yaml ├── srsran-5g-zmq │ ├── Chart.yaml │ ├── artifacthub-repo.yml │ ├── resources │ │ ├── entrypoint.sh │ │ ├── gnb-template.yml │ │ └── ue.conf │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap-entrypoint.yaml │ │ ├── configmap-ue.yaml │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ └── service-gtpu.yaml │ ├── values.schema.json │ └── values.yaml ├── srsran-5g │ ├── Chart.yaml │ ├── artifacthub-repo.yml │ ├── resources │ │ ├── entrypoint.sh │ │ └── gnb-template.yml │ ├── templates │ │ ├── _helpers.tpl │ │ ├── configmap-entrypoint.yaml │ │ ├── configmap.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ └── service-gtpu.yaml │ ├── values.schema.json │ └── values.yaml ├── ueransim-gnb │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ │ ├── gnb.yaml │ │ └── ue.yaml │ ├── templates │ │ ├── NOTES.txt │ │ ├── _helpers.tpl │ │ ├── gnb-configmap.yaml │ │ ├── gnb-deployment.yaml │ │ ├── gnb-hpa.yaml │ │ ├── gnb-svc.yaml │ │ ├── ue-configmap.yaml │ │ └── ues-deployment.yaml │ ├── values.schema.json │ └── values.yaml └── ueransim-ues │ ├── Chart.yaml │ ├── README.md │ ├── artifacthub-repo.yml │ ├── resources │ └── ue.yaml │ ├── templates │ ├── NOTES.txt │ ├── _helpers.tpl │ ├── ue-configmap.yaml │ └── ues-deployment.yaml │ ├── values.schema.json │ └── values.yaml ├── micinncdti_2021.jpg └── scripts ├── ct-config.yaml ├── doc-gen.sh ├── install.sh ├── lint.sh ├── push-all-charts.sh └── push-all-metadata.sh /.github/ISSUE_TEMPLATE/bugreport.yaml: -------------------------------------------------------------------------------- 1 | name: Bug Report 2 | description: File a bug report or issue 3 | title: "[Bug]: " 4 | body: 5 | - type: markdown 6 | attributes: 7 | value: > 8 | **Please note** 9 | 10 | This form should only be used if _you can reproduce_ the bug the in the latest version of 5g-charts. 11 | 12 | **This form is not for support requests.* 13 | - type: textarea 14 | attributes: 15 | label: Steps to reproduce 16 | description: > 17 | Please describe in detail the steps needed to reproduce this bug. These steps 18 | should reproduce the issue on the most current release of 5g-charts. Be sure to 19 | include configuration and platform details. 20 | Please include logs from the relevant daemons as well as any relevant packet captures. 21 | validations: 22 | required: true 23 | - type: textarea 24 | attributes: 25 | label: Logs 26 | description: Provide any relevant captured logs for the issue 27 | render: shell 28 | - type: textarea 29 | attributes: 30 | label: Expected behaviour 31 | description: What did you expect to happen? 32 | validations: 33 | required: true 34 | - type: textarea 35 | attributes: 36 | label: Observed Behaviour 37 | description: What's the observed behaviour? 38 | validations: 39 | required: true 40 | -------------------------------------------------------------------------------- /.github/pull_request_template.md: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | #### What type of PR is this? 9 | 10 | 16 | 17 | #### What this PR does / why we need it: 18 | 19 | 20 | #### Which issue(s) this PR fixes: 21 | 22 | 23 | #### Special notes for your reviewer: 24 | 25 | 26 | #### Does this PR introduce a user-facing change? 27 | 28 | 29 | #### Does this PR introduce new external dependencies? 30 | 31 | 32 | #### Additional documentation: 33 | 34 | ```docs 35 | 36 | ``` 37 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.tgz 2 | *.lock 3 | reports/ 4 | charts/*/charts/ -------------------------------------------------------------------------------- /README.md.gotmpl: -------------------------------------------------------------------------------- 1 | {{ template "chart.header" . }} 2 | {{ template "chart.deprecationWarning" . }} 3 | 4 | {{ template "chart.versionBadge" . }}{{ template "chart.typeBadge" . }}{{ template "chart.appVersionBadge" . }} 5 | 6 | {{ template "chart.description" . }} 7 | 8 | {{ template "chart.homepageLine" . }} 9 | 10 | {{ template "chart.maintainersSection" . }} 11 | 12 | {{ template "chart.sourcesSection" . }} 13 | 14 | {{ template "chart.requirementsSection" . }} 15 | 16 | {{ template "chart.valuesSection" . }} 17 | -------------------------------------------------------------------------------- /charts/free5gc-amf/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "3.4.3" 3 | description: > 4 | Helm chart to deploy Free5GC AMF service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://free5gc.org 8 | icon: https://free5gc.org/assets/logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | - email: avrodriguez@gradiant.org 13 | name: avrodriguez 14 | name: free5gc-amf 15 | version: 0.1.2 16 | annotations: 17 | artifacthub.io/category: networking 18 | keywords: 19 | - network 20 | - ngc 21 | - gradiant 22 | dependencies: 23 | - name: common 24 | repository: https://charts.bitnami.com/bitnami 25 | tags: 26 | - bitnami-common 27 | version: 1.x.x 28 | -------------------------------------------------------------------------------- /charts/free5gc-amf/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Free5GC amf image name 3 | */}} 4 | {{- define "free5gc.amf.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "free5gc.amf.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "free5gc.amf.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/free5gc-amf/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | amfcfg.yaml: | 8 | {{ tpl (.Files.Get "resources/config/amfcfg.yaml") . | indent 4 }} 9 | -------------------------------------------------------------------------------- /charts/free5gc-amf/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/free5gc-amf/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.amf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/free5gc-ausf/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "3.4.3" 3 | description: > 4 | Helm chart to deploy Free5GC AUSF service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://free5gc.org 8 | icon: https://free5gc.org/assets/logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | - email: avrodriguez@gradiant.org 13 | name: avrodriguez 14 | name: free5gc-ausf 15 | version: 0.1.2 16 | annotations: 17 | artifacthub.io/category: networking 18 | keywords: 19 | - network 20 | - ngc 21 | - gradiant 22 | dependencies: 23 | - name: common 24 | repository: https://charts.bitnami.com/bitnami 25 | tags: 26 | - bitnami-common 27 | version: 1.x.x 28 | -------------------------------------------------------------------------------- /charts/free5gc-ausf/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Free5GC ausf image name 3 | */}} 4 | {{- define "free5gc.ausf.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "free5gc.ausf.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "free5gc.ausf.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/free5gc-ausf/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | ausfcfg.yaml: | 8 | {{ tpl (.Files.Get "resources/config/ausfcfg.yaml") . | indent 4 }} 9 | -------------------------------------------------------------------------------- /charts/free5gc-ausf/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/free5gc-ausf/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.amf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/free5gc-chf/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "3.4.3" 3 | description: > 4 | Helm chart to deploy Free5GC CHF service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://free5gc.org 8 | icon: https://free5gc.org/assets/logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | - email: avrodriguez@gradiant.org 13 | name: avrodriguez 14 | name: free5gc-chf 15 | version: 0.1.2 16 | annotations: 17 | artifacthub.io/category: networking 18 | keywords: 19 | - network 20 | - ngc 21 | - gradiant 22 | dependencies: 23 | - name: common 24 | repository: https://charts.bitnami.com/bitnami 25 | tags: 26 | - bitnami-common 27 | version: 1.x.x 28 | -------------------------------------------------------------------------------- /charts/free5gc-chf/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Free5GC chf image name 3 | */}} 4 | {{- define "free5gc.chf.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "free5gc.chf.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "free5gc.chf.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/free5gc-chf/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | chfcfg.yaml: | 8 | {{ tpl (.Files.Get "resources/config/chfcfg.yaml") . | indent 4 }} 9 | -------------------------------------------------------------------------------- /charts/free5gc-chf/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/free5gc-chf/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.amf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/free5gc-nrf/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "3.4.3" 3 | description: > 4 | Helm chart to deploy Free5GC NRF service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://free5gc.org 8 | icon: https://free5gc.org/assets/logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | - email: avrodriguez@gradiant.org 13 | name: avrodriguez 14 | name: free5gc-nrf 15 | version: 0.1.2 16 | annotations: 17 | artifacthub.io/category: networking 18 | keywords: 19 | - network 20 | - ngc 21 | - gradiant 22 | dependencies: 23 | - name: common 24 | repository: https://charts.bitnami.com/bitnami 25 | tags: 26 | - bitnami-common 27 | version: 1.x.x 28 | -------------------------------------------------------------------------------- /charts/free5gc-nrf/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Free5GC nrf image name 3 | */}} 4 | {{- define "free5gc.nrf.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "free5gc.nrf.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "free5gc.nrf.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/free5gc-nrf/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | nrfcfg.yaml: | 8 | {{ tpl (.Files.Get "resources/config/nrfcfg.yaml") . | indent 4 }} 9 | -------------------------------------------------------------------------------- /charts/free5gc-nrf/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/free5gc-nrf/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.amf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/free5gc-nssf/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "3.4.3" 3 | description: > 4 | Helm chart to deploy Free5GC NSSF service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://free5gc.org 8 | icon: https://free5gc.org/assets/logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | - email: avrodriguez@gradiant.org 13 | name: avrodriguez 14 | name: free5gc-nssf 15 | version: 0.1.2 16 | annotations: 17 | artifacthub.io/category: networking 18 | keywords: 19 | - network 20 | - ngc 21 | - gradiant 22 | dependencies: 23 | - name: common 24 | repository: https://charts.bitnami.com/bitnami 25 | tags: 26 | - bitnami-common 27 | version: 1.x.x 28 | -------------------------------------------------------------------------------- /charts/free5gc-nssf/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Free5GC nssf image name 3 | */}} 4 | {{- define "free5gc.nssf.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "free5gc.nssf.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "free5gc.nssf.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/free5gc-nssf/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | nssfcfg.yaml: | 8 | {{ tpl (.Files.Get "resources/config/nssfcfg.yaml") . | indent 4 }} 9 | -------------------------------------------------------------------------------- /charts/free5gc-nssf/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/free5gc-nssf/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.amf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/free5gc-pcf/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "3.4.3" 3 | description: > 4 | Helm chart to deploy Free5GC PCF service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://free5gc.org 8 | icon: https://free5gc.org/assets/logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | - email: avrodriguez@gradiant.org 13 | name: avrodriguez 14 | name: free5gc-pcf 15 | version: 0.1.2 16 | annotations: 17 | artifacthub.io/category: networking 18 | keywords: 19 | - network 20 | - ngc 21 | - gradiant 22 | dependencies: 23 | - name: common 24 | repository: https://charts.bitnami.com/bitnami 25 | tags: 26 | - bitnami-common 27 | version: 1.x.x 28 | -------------------------------------------------------------------------------- /charts/free5gc-pcf/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Free5GC pcf image name 3 | */}} 4 | {{- define "free5gc.pcf.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "free5gc.pcf.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "free5gc.pcf.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/free5gc-pcf/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | pcfcfg.yaml: | 8 | {{ tpl (.Files.Get "resources/config/pcfcfg.yaml") . | indent 4 }} 9 | -------------------------------------------------------------------------------- /charts/free5gc-pcf/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/free5gc-pcf/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.amf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/free5gc-smf/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "3.4.3" 3 | description: > 4 | Helm chart to deploy Free5GC SMF service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://free5gc.org 8 | icon: https://free5gc.org/assets/logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | - email: avrodriguez@gradiant.org 13 | name: avrodriguez 14 | name: free5gc-smf 15 | version: 0.1.2 16 | annotations: 17 | artifacthub.io/category: networking 18 | keywords: 19 | - network 20 | - ngc 21 | - gradiant 22 | dependencies: 23 | - name: common 24 | repository: https://charts.bitnami.com/bitnami 25 | tags: 26 | - bitnami-common 27 | version: 1.x.x 28 | -------------------------------------------------------------------------------- /charts/free5gc-smf/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Free5GC smf image name 3 | */}} 4 | {{- define "free5gc.smf.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "free5gc.smf.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "free5gc.smf.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/free5gc-smf/templates/configmap-uerouting.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }}-uerouting 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | uerouting.yaml: | 8 | {{ tpl (.Files.Get "resources/config/uerouting.yaml") . | indent 4 }} 9 | -------------------------------------------------------------------------------- /charts/free5gc-smf/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | smfcfg.yaml: | 8 | {{ tpl (.Files.Get "resources/config/smfcfg.yaml") . | indent 4 }} 9 | -------------------------------------------------------------------------------- /charts/free5gc-smf/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/free5gc-smf/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.amf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/free5gc-udm/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "3.4.3" 3 | description: > 4 | Helm chart to deploy Free5GC UDM service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://free5gc.org 8 | icon: https://free5gc.org/assets/logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | - email: avrodriguez@gradiant.org 13 | name: avrodriguez 14 | name: free5gc-udm 15 | version: 0.1.2 16 | annotations: 17 | artifacthub.io/category: networking 18 | keywords: 19 | - network 20 | - ngc 21 | - gradiant 22 | dependencies: 23 | - name: common 24 | repository: https://charts.bitnami.com/bitnami 25 | tags: 26 | - bitnami-common 27 | version: 1.x.x 28 | -------------------------------------------------------------------------------- /charts/free5gc-udm/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Free5GC udm image name 3 | */}} 4 | {{- define "free5gc.udm.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "free5gc.udm.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "free5gc.udm.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/free5gc-udm/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | udmcfg.yaml: | 8 | {{ tpl (.Files.Get "resources/config/udmcfg.yaml") . | indent 4 }} 9 | -------------------------------------------------------------------------------- /charts/free5gc-udm/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/free5gc-udm/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.amf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/free5gc-udr/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "3.4.3" 3 | description: > 4 | Helm chart to deploy Free5GC UDR service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://free5gc.org 8 | icon: https://free5gc.org/assets/logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | - email: avrodriguez@gradiant.org 13 | name: avrodriguez 14 | name: free5gc-udr 15 | version: 0.1.2 16 | annotations: 17 | artifacthub.io/category: networking 18 | keywords: 19 | - network 20 | - ngc 21 | - gradiant 22 | dependencies: 23 | - name: common 24 | repository: https://charts.bitnami.com/bitnami 25 | tags: 26 | - bitnami-common 27 | version: 1.x.x 28 | -------------------------------------------------------------------------------- /charts/free5gc-udr/resources/config/udrcfg.yaml: -------------------------------------------------------------------------------- 1 | {{ $free5gcName := .Release.Name }} 2 | {{ $free5gcNamespace := .Release.Namespace }} 3 | info: 4 | version: 1.1.0 5 | description: UDR initial local configuration 6 | 7 | configuration: 8 | sbi: # Service-based interface information 9 | scheme: http # the protocol for sbi (http or https) 10 | registerIPv4: {{ default (printf "%s-udr-sbi" $free5gcName ) .Values.config.sbi.registerIPv4 }} 11 | bindingIPv4: 0.0.0.0 12 | port: 8000 # port used to bind the service 13 | tls: # the local path of TLS key 14 | pem: cert/udr.pem # UDR TLS Certificate 15 | key: cert/udr.key # UDR TLS Private key 16 | dbConnectorType: {{ .Values.config.dbConnectorType }} 17 | mongodb: 18 | name: free5gc # Database name in MongoDB 19 | url: {{ default (printf "mongodb://free5gc-mongodb:27017" ) .Values.config.mongodb.url }} # a valid URL of the mongodb 20 | nrfUri: {{ default (printf "http://%s-nrf-sbi:8000" $free5gcName ) .Values.config.nrfUri }} 21 | 22 | logger: # log output setting 23 | enable: true # true or false 24 | level: {{ .Values.config.logger.level }} # how detailed to output, value: trace, debug, info, warn, error, fatal, panic 25 | reportCaller: false # enable the caller report or not, value: true or false -------------------------------------------------------------------------------- /charts/free5gc-udr/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Free5GC udr image name 3 | */}} 4 | {{- define "free5gc.udr.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "free5gc.udr.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "free5gc.udr.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/free5gc-udr/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | udrcfg.yaml: | 8 | {{ tpl (.Files.Get "resources/config/udrcfg.yaml") . | indent 4 }} 9 | -------------------------------------------------------------------------------- /charts/free5gc-udr/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/free5gc-udr/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.amf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/free5gc-upf/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "3.4.3" 3 | description: > 4 | Helm chart to deploy Free5GC UPF service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://free5gc.org 8 | icon: https://free5gc.org/assets/logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | - email: avrodriguez@gradiant.org 13 | name: avrodriguez 14 | name: free5gc-upf 15 | version: 0.1.2 16 | annotations: 17 | artifacthub.io/category: networking 18 | keywords: 19 | - network 20 | - ngc 21 | - gradiant 22 | dependencies: 23 | - name: common 24 | repository: https://charts.bitnami.com/bitnami 25 | tags: 26 | - bitnami-common 27 | version: 1.x.x 28 | -------------------------------------------------------------------------------- /charts/free5gc-upf/resources/config/upfcfg.yaml: -------------------------------------------------------------------------------- 1 | {{ $free5gcName := .Release.Name }} 2 | {{ $free5gcNamespace := .Release.Namespace }} 3 | version: 1.0.3 4 | description: UPF initial local configuration 5 | 6 | # The listen IP and nodeID of the N4 interface on this UPF (Can't set to 0.0.0.0) 7 | pfcp: 8 | addr: 0.0.0.0 # IP addr for listening 9 | nodeID: {{ default (printf "%s-upf-pfcp.%s.svc.cluster.local" $free5gcName $free5gcNamespace) .Values.config.pfcp.nodeID }} # External IP or FQDN can be reached 10 | retransTimeout: 1s # retransmission timeout 11 | maxRetrans: 3 # the max number of retransmission 12 | 13 | gtpu: 14 | forwarder: gtp5g 15 | # The IP list of the N3/N9 interfaces on this UPF 16 | # If there are multiple connection, set addr to 0.0.0.0 or list all the addresses 17 | ifList: 18 | - addr: 0.0.0.0 19 | type: N3 20 | name: {{ default (printf "%s-upf-gtpu.%s.svc.cluster.local" $free5gcName $free5gcNamespace) .Values.config.gtpu.ifList.name }} 21 | # ifname: gtpif 22 | # mtu: 1400 23 | 24 | # The DNN list supported by UPF 25 | dnnList: 26 | {{- range .Values.config.dnnList }} 27 | - {{- toYaml . | nindent 4 }} 28 | {{- end }} 29 | 30 | logger: # log output setting 31 | enable: true # true or false 32 | level: {{ .Values.config.logger.level }} # how detailed to output, value: trace, debug, info, warn, error, fatal, panic 33 | reportCaller: false # enable the caller report or not, value: true or false -------------------------------------------------------------------------------- /charts/free5gc-upf/resources/upf-iptables.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Configure iptables in UPF 4 | # 5 | iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE 6 | iptables -I FORWARD 1 -j ACCEPT -------------------------------------------------------------------------------- /charts/free5gc-upf/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Free5GC upf image name 3 | */}} 4 | {{- define "free5gc.upf.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "free5gc.upf.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "free5gc.upf.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/free5gc-upf/templates/configmap-entrypoint.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }}-entrypoint 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | upf-iptables.sh: | 8 | {{ tpl (.Files.Get "resources/upf-iptables.sh") . | indent 4 }} 9 | 10 | -------------------------------------------------------------------------------- /charts/free5gc-upf/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | upfcfg.yaml: | 8 | {{ tpl (.Files.Get "resources/config/upfcfg.yaml") . | indent 4 }} 9 | -------------------------------------------------------------------------------- /charts/free5gc-upf/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/free5gc-upf/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.amf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/free5gc-webui/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "3.4.3" 3 | description: > 4 | Helm chart to deploy Free5GC WEBUI service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://free5gc.org 8 | icon: https://free5gc.org/assets/logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | - email: avrodriguez@gradiant.org 13 | name: avrodriguez 14 | name: free5gc-webui 15 | version: 0.1.2 16 | annotations: 17 | artifacthub.io/category: networking 18 | keywords: 19 | - network 20 | - ngc 21 | - gradiant 22 | dependencies: 23 | - name: common 24 | repository: https://charts.bitnami.com/bitnami 25 | tags: 26 | - bitnami-common 27 | version: 1.x.x 28 | -------------------------------------------------------------------------------- /charts/free5gc-webui/resources/config/webuicfg.yaml: -------------------------------------------------------------------------------- 1 | {{ $free5gcName := .Release.Name }} 2 | {{ $free5gcNamespace := .Release.Namespace }} 3 | info: 4 | version: 1.0.3 5 | description: WebUI initial local configuration 6 | 7 | configuration: 8 | mongodb: # the mongodb connected by this webui 9 | name: free5gc # name of the mongodb 10 | url: {{ default (printf "mongodb://free5gc-mongodb:27017" ) .Values.config.mongodb.url }} # a valid URL of the mongodb 11 | nrfUri: {{ default (printf "http://%s-nrf-sbi:8000" $free5gcName ) .Values.config.nrfUri }} # a valid URI of NRF 12 | webServer: 13 | scheme: http 14 | ipv4Address: 0.0.0.0 15 | port: 5000 16 | billingServer: 17 | enable: true 18 | hostIPv4: {{ default (printf "%s-%s.lab5g.gradiant.org" $free5gcName $free5gcNamespace ) .Values.config.billingServer.hostIPv4 }} 19 | listenPort: 2122 20 | portRange: # passive port range 21 | start: 2123 22 | end: 2130 23 | basePath: /tmp/webconsole 24 | port: 2122 # CGF's FTP server port (not used for now) 25 | cert: 26 | pem: cert/chf.pem 27 | key: cert/chf.key 28 | 29 | logger: # log output setting 30 | enable: true # true or false 31 | level: {{ .Values.config.logger.level }} # how detailed to output, value: trace, debug, info, warn, error, fatal, panic 32 | reportCaller: false # enable the caller report or not, value: true or false -------------------------------------------------------------------------------- /charts/free5gc-webui/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Free5GC webui image name 3 | */}} 4 | {{- define "free5gc.webui.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "free5gc.webui.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "free5gc.webui.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/free5gc-webui/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | webuicfg.yaml: | 8 | {{ tpl (.Files.Get "resources/config/webuicfg.yaml") . | indent 4 }} 9 | -------------------------------------------------------------------------------- /charts/free5gc-webui/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/free5gc-webui/templates/ingress.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.ingress.enabled -}} 2 | {{- $kubeVersion := .Capabilities.KubeVersion.GitVersion -}} 3 | apiVersion: networking.k8s.io/v1 4 | kind: Ingress 5 | metadata: 6 | name: {{ include "common.names.fullname" . }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | annotations: 9 | {{- with .Values.ingress.annotations }} 10 | {{- toYaml . | nindent 4 }} 11 | {{- end }} 12 | spec: 13 | {{- if and .Values.ingress.ingressClassName (semverCompare ">=1.19-0" $kubeVersion) }} 14 | ingressClassName: {{ .Values.ingress.ingressClassName }} 15 | {{- end }} 16 | rules: 17 | - host: {{ .Values.ingress.hostname | default (printf "%s-%s.lab5g.gradiant.org" .Release.Name .Release.Namespace) }} 18 | http: 19 | paths: 20 | - path: {{ .Values.ingress.path }} 21 | pathType: {{ .Values.ingress.pathType }} 22 | backend: 23 | service: 24 | name: {{ include "common.names.fullname" $ }} 25 | port: 26 | name: http 27 | {{- if .Values.ingress.tls }} 28 | tls: 29 | - hosts: 30 | - {{ .Values.ingress.hostname | default (printf "%s-%s.lab5g.gradiant.org" .Release.Name .Release.Namespace) }} 31 | secretName: {{ printf "%s-tls" .Values.ingress.hostname }} 32 | {{- end }} 33 | {{- end }} 34 | -------------------------------------------------------------------------------- /charts/free5gc-webui/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.amf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/free5gc/values.yaml: -------------------------------------------------------------------------------- 1 | mongodb: 2 | enabled: true 3 | auth: 4 | enabled: false 5 | amf: 6 | enabled: true 7 | ausf: 8 | enabled: true 9 | chf: 10 | enabled: true 11 | nrf: 12 | enabled: true 13 | nssf: 14 | enabled: true 15 | pcf: 16 | enabled: true 17 | smf: 18 | enabled: true 19 | udm: 20 | enabled: true 21 | udr: 22 | enabled: true 23 | upf: 24 | enabled: true 25 | webui: 26 | enabled: true 27 | -------------------------------------------------------------------------------- /charts/iperf3/Chart.yaml: -------------------------------------------------------------------------------- 1 | annotations: 2 | category: apps 3 | artifacthub.io/category: networking 4 | apiVersion: v2 5 | appVersion: 1.0.0 6 | dependencies: 7 | - name: common 8 | repository: https://charts.bitnami.com/bitnami 9 | tags: 10 | - bitnami-common 11 | version: 1.x.x 12 | description: iPerf3 is a tool for active measurements of the maximum achievable bandwidth on IP networks. It supports tuning of various parameters related to timing, buffers and protocols (TCP, UDP, SCTP with IPv4 and IPv6). For each test it reports the bandwidth, loss, and other parameters. 13 | engine: gotpl 14 | home: https://iperf.fr/ 15 | icon: https://iperf.fr/images/logo_iperf_command.png 16 | keywords: 17 | - network 18 | - apps 19 | - gradiant 20 | - k8s 21 | maintainers: 22 | - email: admin@gradiant.org 23 | name: Gradiant 24 | name: iperf3 25 | sources: 26 | - https://iperf.fr/ 27 | version: 0.1.3 28 | -------------------------------------------------------------------------------- /charts/iperf3/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: 28e200ac-53fd-4434-a4ed-35efff87c3c7 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/iperf3/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | 2 | {{/* 3 | Return the proper iperf3 image name 4 | */}} 5 | {{- define "iperf3.image" -}} 6 | {{ include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) }} 7 | {{- end -}} 8 | 9 | {{/* 10 | Return the proper Docker Image Registry Secret Names 11 | */}} 12 | {{- define "iperf3.imagePullSecrets" -}} 13 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image) "global" .Values.global) -}} 14 | {{- end -}} -------------------------------------------------------------------------------- /charts/iperf3/templates/service.yaml: -------------------------------------------------------------------------------- 1 | 2 | 3 | apiVersion: v1 4 | kind: Service 5 | metadata: 6 | name: {{ include "common.names.fullname" . }} 7 | namespace: {{ .Release.Namespace | quote }} 8 | labels: {{- include "common.labels.standard" . | nindent 4 }} 9 | {{- if .Values.commonLabels }} 10 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 11 | {{- end }} 12 | {{- if .Values.commonAnnotations }} 13 | annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | spec: 16 | type: {{ .Values.service.type }} 17 | {{- if (or (eq .Values.service.type "LoadBalancer") (eq .Values.service.type "NodePort")) }} 18 | externalTrafficPolicy: {{ .Values.service.externalTrafficPolicy | quote }} 19 | {{- end }} 20 | {{ if eq .Values.service.type "LoadBalancer" }} 21 | loadBalancerSourceRanges: {{ .Values.service.loadBalancerSourceRanges }} 22 | {{ end }} 23 | {{- if (and (eq .Values.service.type "LoadBalancer") (not (empty .Values.service.loadBalancerIP))) }} 24 | loadBalancerIP: {{ .Values.service.loadBalancerIP }} 25 | {{- end }} 26 | ports: 27 | - name: iperf 28 | port: 5201 29 | protocol: TCP 30 | selector: {{- include "common.labels.matchLabels" . | nindent 4 }} -------------------------------------------------------------------------------- /charts/iperf3/templates/service_udp.yaml: -------------------------------------------------------------------------------- 1 | 2 | 3 | apiVersion: v1 4 | kind: Service 5 | metadata: 6 | name: {{ include "common.names.fullname" . }}-udp 7 | namespace: {{ .Release.Namespace | quote }} 8 | labels: {{- include "common.labels.standard" . | nindent 4 }} 9 | {{- if .Values.commonLabels }} 10 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 11 | {{- end }} 12 | {{- if .Values.commonAnnotations }} 13 | annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | spec: 16 | type: {{ .Values.service.type }} 17 | {{- if (or (eq .Values.service.type "LoadBalancer") (eq .Values.service.type "NodePort")) }} 18 | externalTrafficPolicy: {{ .Values.service.externalTrafficPolicy | quote }} 19 | {{- end }} 20 | {{ if eq .Values.service.type "LoadBalancer" }} 21 | loadBalancerSourceRanges: {{ .Values.service.loadBalancerSourceRanges }} 22 | {{ end }} 23 | {{- if (and (eq .Values.service.type "LoadBalancer") (not (empty .Values.service.loadBalancerIP))) }} 24 | loadBalancerIP: {{ .Values.service.loadBalancerIP }} 25 | {{- end }} 26 | ports: 27 | - name: iperf-udp 28 | port: 5201 29 | protocol: UDP 30 | selector: {{- include "common.labels.matchLabels" . | nindent 4 }} -------------------------------------------------------------------------------- /charts/jitsi/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: stable-6865 3 | description: > 4 | Helm chart to deploy Jitsi on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - https://github.com/jitsi-contrib/jitsi-helm 8 | maintainers: 9 | - email: mmarquez@gradiant.org 10 | name: mmarquez999 11 | icon: https://jitsi.org/wp-content/uploads/2018/11/jitsi-logo-blue-grey-text.png 12 | name: jitsi 13 | version: 0.0.5 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - apps 19 | - k8s 20 | dependencies: 21 | - name: prosody 22 | condition: prosody.enabled 23 | version: 1.2.2 24 | -------------------------------------------------------------------------------- /charts/jitsi/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 jitsi-contrib 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /charts/jitsi/charts/prosody/.helmignore: -------------------------------------------------------------------------------- 1 | # Patterns to ignore when building packages. 2 | # This supports shell glob matching, relative path matching, and 3 | # negation (prefixed with !). Only one pattern per line. 4 | .DS_Store 5 | # Common VCS dirs 6 | .git/ 7 | .gitignore 8 | .bzr/ 9 | .bzrignore 10 | .hg/ 11 | .hgignore 12 | .svn/ 13 | # Common backup files 14 | *.swp 15 | *.bak 16 | *.tmp 17 | *.orig 18 | *~ 19 | # Various IDEs 20 | .project 21 | .idea/ 22 | *.tmproj 23 | .vscode/ 24 | -------------------------------------------------------------------------------- /charts/jitsi/charts/prosody/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | name: prosody 3 | description: A Helm chart for Kubernetes 4 | 5 | # A chart can be either an 'application' or a 'library' chart. 6 | # 7 | # Application charts are a collection of templates that can be packaged into versioned archives 8 | # to be deployed. 9 | # 10 | # Library charts provide useful utilities or functions for the chart developer. They're included as 11 | # a dependency of application charts to inject those utilities and functions into the rendering 12 | # pipeline. Library charts do not define any templates and therefore cannot be deployed. 13 | type: application 14 | 15 | # This is the chart version. This version number should be incremented each time you make changes 16 | # to the chart and its templates, including the app version. 17 | version: 1.2.2 18 | 19 | # This is the version number of the application being deployed. This version number should be 20 | # incremented each time you make changes to the application. 21 | appVersion: 0.11.13 22 | -------------------------------------------------------------------------------- /charts/jitsi/charts/prosody/templates/envs-configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "prosody.fullname" . }} 5 | labels: 6 | {{- include "prosody.labels" . | nindent 4 }} 7 | data: 8 | {{- range $key, $value := .Values.env }} 9 | {{- if not (kindIs "invalid" $value) }} 10 | {{ $key }}: {{ tpl $value $ | quote }} 11 | {{- end }} 12 | {{- end }} 13 | -------------------------------------------------------------------------------- /charts/jitsi/charts/prosody/templates/envs-secret.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Secret 3 | metadata: 4 | name: {{ include "prosody.fullname" . }} 5 | labels: 6 | {{- include "prosody.labels" . | nindent 4 }} 7 | type: Opaque 8 | data: 9 | {{- range $key, $value := .Values.secretEnvs }} 10 | {{- if not (kindIs "invalid" $value) }} 11 | {{ $key }}: {{ tpl $value $ | b64enc }} 12 | {{- end }} 13 | {{- end }} 14 | -------------------------------------------------------------------------------- /charts/jitsi/charts/prosody/templates/service.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Service 3 | metadata: 4 | name: {{ include "prosody.fullname" . }} 5 | labels: 6 | {{- include "prosody.labels" . | nindent 4 }} 7 | spec: 8 | type: {{ .Values.service.type }} 9 | ports: 10 | - port: {{ index .Values.service.ports "bosh-insecure" }} 11 | protocol: TCP 12 | name: tcp-bosh-insecure 13 | - port: {{ index .Values.service.ports "bosh-secure" }} 14 | protocol: TCP 15 | name: tcp-bosh-secure 16 | - port: {{ index .Values.service.ports "xmpp-component" }} 17 | protocol: TCP 18 | name: tcp-xmpp-component 19 | - port: {{ index .Values.service.ports "xmpp-c2s" }} 20 | protocol: TCP 21 | name: tcp-xmpp-c2 22 | - port: {{ index .Values.service.ports "xmpp-s2s" }} 23 | protocol: TCP 24 | name: tcp-xmpp-s2 25 | selector: 26 | {{- include "prosody.selectorLabels" . | nindent 4 }} 27 | -------------------------------------------------------------------------------- /charts/jitsi/charts/prosody/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create -}} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "prosody.serviceAccountName" . }} 6 | labels: 7 | {{- include "prosody.labels" . | nindent 4 }} 8 | {{- with .Values.serviceAccount.annotations }} 9 | annotations: 10 | {{- toYaml . | nindent 4 }} 11 | {{- end }} 12 | {{- end -}} 13 | -------------------------------------------------------------------------------- /charts/jitsi/charts/prosody/templates/tests/test-connection.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Pod 3 | metadata: 4 | name: "{{ include "prosody.fullname" . }}-test-connection" 5 | labels: 6 | {{- include "prosody.labels" . | nindent 4 }} 7 | annotations: 8 | "helm.sh/hook": test-success 9 | spec: 10 | containers: 11 | - name: wget 12 | image: busybox 13 | command: ['wget'] 14 | args: ['{{ include "prosody.fullname" . }}:{{ index .Values.service.ports "bosh-insecure" }}'] 15 | restartPolicy: Never 16 | -------------------------------------------------------------------------------- /charts/jitsi/docs/robots.txt: -------------------------------------------------------------------------------- 1 | User-Agent: * 2 | Disallow: / 3 | -------------------------------------------------------------------------------- /charts/jitsi/templates/jibri/_helper.tpl: -------------------------------------------------------------------------------- 1 | 2 | {{- define "jitsi-meet.jibri.fullname" -}} 3 | {{ include "jitsi-meet.fullname" . }}-jibri 4 | {{- end -}} 5 | 6 | {{- define "jitsi-meet.jibri.labels" -}} 7 | {{ include "jitsi-meet.labels" . }} 8 | app.kubernetes.io/component: jibri 9 | {{- end -}} 10 | 11 | {{- define "jitsi-meet.jibri.selectorLabels" -}} 12 | {{ include "jitsi-meet.selectorLabels" . }} 13 | app.kubernetes.io/component: jibri 14 | {{- end -}} 15 | 16 | {{- define "jitsi-meet.jibri.secret" -}} 17 | {{ include "call-nested" (list . "prosody" "prosody.fullname") }}-jibri 18 | {{- end -}} 19 | -------------------------------------------------------------------------------- /charts/jitsi/templates/jibri/configmap.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.jibri.enabled }} 2 | apiVersion: v1 3 | kind: ConfigMap 4 | metadata: 5 | name: {{ include "jitsi-meet.jibri.fullname" . }} 6 | labels: 7 | {{- include "jitsi-meet.jibri.labels" . | nindent 4 }} 8 | data: 9 | XMPP_SERVER: '{{ include "jitsi-meet.xmpp.server" . }}' 10 | JIBRI_BREWERY_MUC: '{{ .Values.jibri.breweryMuc }}' 11 | JIBRI_RECORDING_DIR: '{{ .Values.jibri.recordingDir | default "/data/recordings" }}' 12 | JIBRI_FINALIZE_RECORDING_SCRIPT_PATH: "/config/finalize.sh" 13 | JIBRI_STRIP_DOMAIN_JID: muc 14 | JIBRI_LOGS_DIR: "/data/logs" 15 | DISPLAY: ":0" 16 | {{- range $key, $value := .Values.jibri.extraEnvs }} 17 | {{- if not (kindIs "invalid" $value) }} 18 | {{ $key }}: {{ tpl $value $ | quote }} 19 | {{- end }} 20 | {{- end }} 21 | {{- end }} 22 | -------------------------------------------------------------------------------- /charts/jitsi/templates/jibri/persistentvolumeclaim.yaml: -------------------------------------------------------------------------------- 1 | {{- if and .Values.jibri.enabled .Values.jibri.persistence.enabled (not .Values.jibri.persistence.existingClaim)}} 2 | apiVersion: v1 3 | kind: PersistentVolumeClaim 4 | metadata: 5 | name: {{ include "jitsi-meet.jibri.fullname" . }} 6 | labels: 7 | {{- include "jitsi-meet.jibri.labels" . | nindent 4 }} 8 | namespace: {{ .Release.Namespace }} 9 | spec: 10 | accessModes: 11 | - ReadWriteOnce 12 | resources: 13 | requests: 14 | storage: {{ .Values.jibri.persistence.size | quote }} 15 | {{- with .Values.jibri.persistence.storageClassName }} 16 | storageClassName: {{ . | quote }} 17 | {{- end }} 18 | {{- end -}} 19 | -------------------------------------------------------------------------------- /charts/jitsi/templates/jibri/service.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.jibri.enabled }} 2 | apiVersion: v1 3 | kind: Service 4 | metadata: 5 | name: {{ include "jitsi-meet.jibri.fullname" . }} 6 | labels: 7 | {{- include "jitsi-meet.jibri.labels" . | nindent 4 }} 8 | spec: 9 | type: ClusterIP 10 | ports: 11 | - name: http-internal 12 | port: 3333 13 | targetPort: 3333 14 | protocol: TCP 15 | - name: http-api 16 | port: 2222 17 | targetPort: 2222 18 | protocol: TCP 19 | selector: 20 | {{- include "jitsi-meet.jibri.selectorLabels" . | nindent 4 }} 21 | {{- end }} 22 | -------------------------------------------------------------------------------- /charts/jitsi/templates/jibri/xmpp-secret.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.jibri.enabled }} 2 | apiVersion: v1 3 | kind: Secret 4 | metadata: 5 | name: {{ include "call-nested" (list . "prosody" "prosody.fullname") }}-jibri 6 | labels: 7 | {{- include "jitsi-meet.jibri.labels" . | nindent 4 }} 8 | type: Opaque 9 | data: 10 | JIBRI_XMPP_USER: '{{ .Values.jibri.xmpp.user | b64enc }}' 11 | JIBRI_XMPP_PASSWORD: '{{ default (randAlphaNum 10) .Values.jibri.xmpp.password | b64enc }}' 12 | JIBRI_RECORDER_USER: '{{ .Values.jibri.recorder.user | b64enc }}' 13 | JIBRI_RECORDER_PASSWORD: '{{ default (randAlphaNum 10) .Values.jibri.recorder.password | b64enc }}' 14 | {{- end }} 15 | -------------------------------------------------------------------------------- /charts/jitsi/templates/jicofo/_helper.tpl: -------------------------------------------------------------------------------- 1 | 2 | {{- define "jitsi-meet.jicofo.fullname" -}} 3 | {{ include "jitsi-meet.fullname" . }}-jicofo 4 | {{- end -}} 5 | 6 | {{- define "jitsi-meet.jicofo.labels" -}} 7 | {{ include "jitsi-meet.labels" . }} 8 | app.kubernetes.io/component: jicofo 9 | {{- end -}} 10 | 11 | {{- define "jitsi-meet.jicofo.selectorLabels" -}} 12 | {{ include "jitsi-meet.selectorLabels" . }} 13 | app.kubernetes.io/component: jicofo 14 | {{- end -}} 15 | 16 | {{- define "jitsi-meet.jicofo.secret" -}} 17 | {{ include "call-nested" (list . "prosody" "prosody.fullname") }}-jicofo 18 | {{- end -}} 19 | -------------------------------------------------------------------------------- /charts/jitsi/templates/jicofo/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "jitsi-meet.jicofo.fullname" . }} 5 | labels: 6 | {{- include "jitsi-meet.jicofo.labels" . | nindent 4 }} 7 | data: 8 | JVB_BREWERY_MUC: '{{ .Values.jvb.breweryMuc }}' 9 | XMPP_SERVER: '{{ include "jitsi-meet.xmpp.server" . }}' 10 | {{- if .Values.jibri.enabled }} 11 | JIBRI_BREWERY_MUC: '{{ .Values.jibri.breweryMuc }}' 12 | JIBRI_PENDING_TIMEOUT: '{{ .Values.jibri.timeout }}' 13 | {{- end }} 14 | {{- range $key, $value := .Values.jicofo.extraEnvs }} 15 | {{- if not (kindIs "invalid" $value) }} 16 | {{ $key }}: {{ tpl $value $ | quote }} 17 | {{- end }} 18 | {{- end }} 19 | {{- if .Values.octo.enabled }} 20 | ENABLE_OCTO: "1" 21 | OCTO_BRIDGE_SELECTION_STRATEGY: "SplitBridgeSelectionStrategy" 22 | {{- end }} -------------------------------------------------------------------------------- /charts/jitsi/templates/jicofo/xmpp-secret.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Secret 3 | metadata: 4 | name: {{ include "call-nested" (list . "prosody" "prosody.fullname") }}-jicofo 5 | labels: 6 | {{- include "jitsi-meet.jicofo.labels" . | nindent 4 }} 7 | type: Opaque 8 | data: 9 | JICOFO_AUTH_USER: '{{ .Values.jicofo.xmpp.user | b64enc }}' 10 | JICOFO_AUTH_PASSWORD: '{{ default (randAlphaNum 10) .Values.jicofo.xmpp.password | b64enc }}' 11 | JICOFO_COMPONENT_SECRET: '{{ default (randAlphaNum 10) .Values.jicofo.xmpp.componentSecret | b64enc }}' 12 | -------------------------------------------------------------------------------- /charts/jitsi/templates/jvb/_helper.tpl: -------------------------------------------------------------------------------- 1 | 2 | {{- define "jitsi-meet.jvb.fullname" -}} 3 | {{ include "jitsi-meet.fullname" . }}-jvb 4 | {{- end -}} 5 | 6 | {{- define "jitsi-meet.jvb.labels" -}} 7 | {{ include "jitsi-meet.labels" . }} 8 | app.kubernetes.io/component: jvb 9 | {{- end -}} 10 | 11 | {{- define "jitsi-meet.jvb.selectorLabels" -}} 12 | {{ include "jitsi-meet.selectorLabels" . }} 13 | app.kubernetes.io/component: jvb 14 | {{- end -}} 15 | 16 | {{- define "jitsi-meet.jvb.secret" -}} 17 | {{ include "call-nested" (list . "prosody" "prosody.fullname") }}-jvb 18 | {{- end -}} 19 | -------------------------------------------------------------------------------- /charts/jitsi/templates/jvb/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "jitsi-meet.jvb.fullname" . }} 5 | labels: 6 | {{- include "jitsi-meet.jvb.labels" . | nindent 4 }} 7 | data: 8 | JVB_BREWERY_MUC: '{{ .Values.jvb.breweryMuc }}' 9 | JVB_PORT: '{{ .Values.jvb.UDPPort }}' 10 | JVB_STUN_SERVERS: '{{.Values.jvb.stunServers }}' 11 | JVB_TCP_HARVESTER_DISABLED: '1' 12 | XMPP_SERVER: '{{ include "jitsi-meet.xmpp.server" . }}' 13 | {{- range $key, $value := .Values.jvb.extraEnvs }} 14 | {{- if not (kindIs "invalid" $value) }} 15 | {{ $key }}: {{ tpl $value $ | quote }} 16 | {{- end }} 17 | {{- end }} 18 | COLIBRI_REST_ENABLED: 'true' 19 | {{- if .Values.jvb.websockets.enabled }} 20 | ENABLE_COLIBRI_WEBSOCKET: 'true' 21 | {{- else }} 22 | ENABLE_COLIBRI_WEBSOCKET: 'false' 23 | {{- end }} 24 | {{- if .Values.octo.enabled }} 25 | ENABLE_OCTO: "1" 26 | JVB_OCTO_BIND_PORT: "4096" 27 | JVB_OCTO_REGION: "all" 28 | {{- end }} -------------------------------------------------------------------------------- /charts/jitsi/templates/jvb/metrics-prometheus.yaml: -------------------------------------------------------------------------------- 1 | {{- if and (.Values.jvb.metrics.enabled) (.Values.jvb.metrics.serviceMonitor.enabled) }} 2 | apiVersion: monitoring.coreos.com/v1 3 | kind: ServiceMonitor 4 | metadata: 5 | name: {{ template "jitsi-meet.jvb.fullname" . }} 6 | labels: 7 | {{- include "jitsi-meet.jvb.labels" . | nindent 4 }} 8 | {{- range $key, $value := .Values.jvb.metrics.serviceMonitor.selector }} 9 | {{ $key }}: {{ $value | quote }} 10 | {{- end }} 11 | spec: 12 | endpoints: 13 | - port: tcp-metrics 14 | path: /metrics 15 | {{- if .Values.jvb.metrics.serviceMonitor.honorLabels }} 16 | honorLabels: {{ .Values.jvb.metrics.serviceMonitor.honorLabels }} 17 | {{- end }} 18 | {{- if .Values.jvb.metrics.serviceMonitor.interval }} 19 | interval: {{ .Values.jvb.metrics.serviceMonitor.interval }} 20 | {{- end }} 21 | selector: 22 | matchLabels: 23 | {{- include "jitsi-meet.jvb.labels" . | nindent 6 }} 24 | namespaceSelector: 25 | matchNames: 26 | - {{ .Release.Namespace }} 27 | {{- end -}} 28 | -------------------------------------------------------------------------------- /charts/jitsi/templates/jvb/metrics-service.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.jvb.metrics.enabled }} 2 | apiVersion: v1 3 | kind: Service 4 | metadata: 5 | name: {{ include "jitsi-meet.jvb.fullname" . }}-metrics 6 | labels: 7 | {{- include "jitsi-meet.jvb.labels" . | nindent 4 }} 8 | spec: 9 | type: ClusterIP 10 | ports: 11 | - port: 9888 12 | protocol: TCP 13 | name: tcp-metrics 14 | selector: 15 | {{- include "jitsi-meet.jvb.selectorLabels" . | nindent 4 }} 16 | {{- end }} 17 | -------------------------------------------------------------------------------- /charts/jitsi/templates/jvb/service.yaml: -------------------------------------------------------------------------------- 1 | {{- if or (and (kindIs "invalid" .Values.jvb.service.enabled) (not .Values.jvb.useHostPort)) .Values.jvb.service.enabled }} 2 | apiVersion: v1 3 | kind: Service 4 | metadata: 5 | name: {{ include "jitsi-meet.jvb.fullname" . }} 6 | annotations: 7 | {{- range $key, $value := .Values.jvb.service.annotations }} 8 | {{ $key }}: {{ $value | quote }} 9 | {{- end }} 10 | labels: 11 | {{- include "jitsi-meet.jvb.labels" . | nindent 4 }} 12 | spec: 13 | type: {{ .Values.jvb.service.type }} 14 | {{- with .Values.jvb.service.LoadbalancerIP }} 15 | loadBalancerIP: {{ . }} 16 | {{- end }} 17 | ports: 18 | - port: {{ default 10000 .Values.jvb.UDPPort }} 19 | {{- if or (eq .Values.jvb.service.type "NodePort") (eq .Values.jvb.service.type "LoadBalancer") }} 20 | nodePort: {{ .Values.jvb.nodePort }} 21 | {{- end }} 22 | protocol: UDP 23 | name: rtp-udp 24 | {{- if .Values.jvb.websockets.enabled }} 25 | - port: 9090 26 | protocol: TCP 27 | name: colibri-ws-tcp 28 | {{- end }} 29 | {{- with .Values.jvb.service.externalIPs }} 30 | externalIPs: 31 | {{ toYaml . | indent 2 | trim }} 32 | {{- end }} 33 | selector: 34 | {{- include "jitsi-meet.jvb.selectorLabels" . | nindent 4 }} 35 | {{- end }} 36 | -------------------------------------------------------------------------------- /charts/jitsi/templates/jvb/xmpp-secret.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Secret 3 | metadata: 4 | name: {{ include "call-nested" (list . "prosody" "prosody.fullname") }}-jvb 5 | labels: 6 | {{- include "jitsi-meet.jvb.labels" . | nindent 4 }} 7 | type: Opaque 8 | data: 9 | JVB_AUTH_USER: '{{ .Values.jvb.xmpp.user | b64enc }}' 10 | JVB_AUTH_PASSWORD: '{{ default (randAlphaNum 10) .Values.jvb.xmpp.password | b64enc }}' 11 | -------------------------------------------------------------------------------- /charts/jitsi/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create -}} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "jitsi-meet.serviceAccountName" . }} 6 | labels: 7 | {{- include "jitsi-meet.labels" . | nindent 4 }} 8 | {{- with .Values.serviceAccount.annotations }} 9 | annotations: 10 | {{- toYaml . | nindent 4 }} 11 | {{- end }} 12 | {{- end -}} 13 | -------------------------------------------------------------------------------- /charts/jitsi/templates/tests/test-connection.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Pod 3 | metadata: 4 | name: "{{ include "jitsi-meet.web.fullname" . }}-test-connection" 5 | labels: 6 | {{- include "jitsi-meet.web.labels" . | nindent 4 }} 7 | annotations: 8 | "helm.sh/hook": test-success 9 | spec: 10 | containers: 11 | - name: wget 12 | image: busybox 13 | command: ['wget'] 14 | args: ['{{ include "jitsi-meet.web.fullname" . }}:{{ .Values.web.service.port }}'] 15 | restartPolicy: Never 16 | -------------------------------------------------------------------------------- /charts/jitsi/templates/web/_helper.tpl: -------------------------------------------------------------------------------- 1 | 2 | {{- define "jitsi-meet.web.fullname" -}} 3 | {{ include "jitsi-meet.fullname" . }}-web 4 | {{- end -}} 5 | 6 | {{- define "jitsi-meet.web.labels" -}} 7 | {{ include "jitsi-meet.labels" . }} 8 | app.kubernetes.io/component: web 9 | {{- end -}} 10 | 11 | {{- define "jitsi-meet.web.selectorLabels" -}} 12 | {{ include "jitsi-meet.selectorLabels" . }} 13 | app.kubernetes.io/component: web 14 | {{- end -}} 15 | 16 | -------------------------------------------------------------------------------- /charts/jitsi/templates/web/configmap.yaml: -------------------------------------------------------------------------------- 1 | {{- $serverID := default "podIP" .Values.jvb.websockets.serverID }} 2 | apiVersion: v1 3 | kind: ConfigMap 4 | metadata: 5 | name: {{ include "jitsi-meet.web.fullname" . }} 6 | labels: 7 | {{- include "jitsi-meet.web.labels" . | nindent 4 }} 8 | data: 9 | DISABLE_HTTPS: {{ ternary "0" "1" .Values.web.httpsEnabled | quote }} 10 | ENABLE_HTTP_REDIRECT: {{ ternary "1" "0" .Values.web.httpRedirect | quote }} 11 | JICOFO_AUTH_USER: '{{ .Values.jicofo.xmpp.user }}' 12 | XMPP_BOSH_URL_BASE: 'http://{{ include "jitsi-meet.xmpp.server" . }}:{{ index .Values.prosody.service.ports "bosh-insecure" }}' 13 | {{- if and .Values.jvb.websockets.enabled (eq $serverID "service") }} 14 | NGINX_RESOLVER: {{ required "(web.resolverIP) Please set an IP address of your KubeDNS service!" .Values.web.resolverIP }} 15 | {{- end }} 16 | {{- if .Values.jibri.enabled }} 17 | ENABLE_RECORDING: "true" 18 | ENABLE_FILE_RECORDING_SERVICE_SHARING: "true" 19 | {{- end }} 20 | {{- range $key, $value := .Values.web.extraEnvs }} 21 | {{- if not (kindIs "invalid" $value) }} 22 | {{ $key }}: {{ tpl $value $ | quote }} 23 | {{- end }} 24 | {{- end }} 25 | -------------------------------------------------------------------------------- /charts/jitsi/templates/web/service.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Service 3 | metadata: 4 | name: {{ include "jitsi-meet.web.fullname" . }} 5 | labels: 6 | {{- include "jitsi-meet.web.labels" . | nindent 4 }} 7 | spec: 8 | type: {{ .Values.web.service.type }} 9 | ports: 10 | - port: {{ .Values.web.service.port }} 11 | protocol: TCP 12 | name: http 13 | {{- with .Values.web.service.externalIPs }} 14 | externalIPs: 15 | {{ toYaml . | indent 2 | trim }} 16 | {{- end }} 17 | selector: 18 | {{- include "jitsi-meet.web.selectorLabels" . | nindent 4 }} 19 | -------------------------------------------------------------------------------- /charts/oai-enb/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | appVersion: "1.2.2" 3 | description: > 4 | OpenAirInterface enodeb 5 | home: https://github.com/Gradiant/charts 6 | sources: 7 | - https://gitlab.eurecom.fr/oai/openairinterface5g/ 8 | icon: https://openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: oai-enb 13 | version: 0.1.1 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - lte 19 | - enodeb 20 | -------------------------------------------------------------------------------- /charts/oai-enb/README.md: -------------------------------------------------------------------------------- 1 | # oai-enb 2 | 3 | ![Version: 0.1.0](https://img.shields.io/badge/Version-0.1.0-informational?style=flat-square) ![AppVersion: 1.2.2](https://img.shields.io/badge/AppVersion-1.2.2-informational?style=flat-square) 4 | 5 | OpenAirInterface enodeb 6 | 7 | **Homepage:** 8 | 9 | ## Maintainers 10 | 11 | | Name | Email | Url | 12 | | ---- | ------ | --- | 13 | | cgiraldo | cgiraldo@gradiant.org | | 14 | 15 | ## Source Code 16 | 17 | * 18 | 19 | ## Values 20 | 21 | | Key | Type | Default | Description | 22 | |-----|------|---------|-------------| 23 | | enb.mcc | string | `"001"` | | 24 | | enb.mme | string | `"mme"` | | 25 | | enb.mnc | string | `"01"` | | 26 | | enb.tac | string | `"0001"` | | 27 | | image.pullPolicy | string | `"IfNotPresent"` | | 28 | | image.registry | string | `"docker.io"` | | 29 | | image.repository | string | `"gradiant/oai-enb"` | | 30 | | image.tag | string | `"1.2.2"` | | 31 | | resources.limits."ettus.com/usrp" | int | `1` | | 32 | 33 | ---------------------------------------------- 34 | Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0) 35 | -------------------------------------------------------------------------------- /charts/oai-enb/templates/NOTES.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gradiant/5g-charts/5ca31a2e8d48fe7c74eaef0f6a528f8913a43be7/charts/oai-enb/templates/NOTES.txt -------------------------------------------------------------------------------- /charts/oai-enb/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "oai-enb.fullname" . }} 5 | labels: 6 | {{ include "oai-enb.labels.standard" . | nindent 4 }} 7 | data: 8 | enb.conf: | 9 | {{ tpl (.Files.Get "resources/enb.conf") . | indent 4 }} 10 | -------------------------------------------------------------------------------- /charts/oai-enb/templates/registry-secret.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.imageCredentials }} 2 | {{- if .Values.imageCredentials.registry }} 3 | apiVersion: v1 4 | kind: Secret 5 | 6 | metadata: 7 | name: {{ include "oai-enb.fullname" . }}-registry 8 | labels: 9 | {{ include "oai-enb.labels.standard" . | indent 4 }} 10 | type: kubernetes.io/dockerconfigjson 11 | data: 12 | .dockerconfigjson: {{ template "oai-enb.dockerconfig" . }} 13 | {{- end }} 14 | {{- end }} -------------------------------------------------------------------------------- /charts/oai-enb/values.yaml: -------------------------------------------------------------------------------- 1 | image: 2 | registry: docker.io 3 | repository: gradiant/oai-enb 4 | tag: "1.2.2" 5 | ## Specify a imagePullPolicy 6 | ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' 7 | ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images 8 | ## 9 | pullPolicy: IfNotPresent 10 | ## Optionally specify an array of imagePullSecrets. 11 | ## Secrets must be manually created in the namespace. 12 | ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ 13 | ## 14 | # pullSecrets: 15 | # - regcred 16 | 17 | enb: 18 | mcc: '001' 19 | mnc: '01' 20 | tac: '0001' 21 | mme: mme 22 | resources: 23 | limits: 24 | ettus.com/usrp: 1 25 | -------------------------------------------------------------------------------- /charts/oai-gnb/Chart.yaml: -------------------------------------------------------------------------------- 1 | annotations: 2 | category: apps 3 | artifacthub.io/category: networking 4 | apiVersion: v2 5 | appVersion: 2021.w32 6 | dependencies: 7 | - name: common 8 | repository: https://charts.bitnami.com/bitnami 9 | tags: 10 | - bitnami-common 11 | version: 1.x.x 12 | description: description 13 | engine: gotpl 14 | home: https://openairinterface.org/ 15 | icon: https://openairinterface.org/wp-content/uploads/2020/11/cropped-android-chrome-512x512-1-270x270.png 16 | keywords: 17 | - network 18 | - apps 19 | - gradiant 20 | - k8s 21 | maintainers: 22 | - email: admin@gradiant.org 23 | name: Gradiant 24 | name: oai-gnb 25 | sources: 26 | - https://gitlab.eurecom.fr/oai/openairinterface5g/ 27 | version: 0.3.2 28 | -------------------------------------------------------------------------------- /charts/oai-gnb/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | 2 | {{/* 3 | Return the proper oai-gnb image name 4 | */}} 5 | {{- define "oai-gnb.image" -}} 6 | {{ include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) }} 7 | {{- end -}} 8 | 9 | {{/* 10 | Return the proper Docker Image Registry Secret Names 11 | */}} 12 | {{- define "oai-gnb.imagePullSecrets" -}} 13 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image) "global" .Values.global) -}} 14 | {{- end -}} -------------------------------------------------------------------------------- /charts/oai-gnb/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | 2 | apiVersion: v1 3 | kind: ConfigMap 4 | metadata: 5 | name: {{ include "common.names.fullname" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | {{- if .Values.commonAnnotations }} 12 | annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 13 | {{- end }} 14 | data: 15 | gnb.sa.tdd.conf: | 16 | {{ tpl (.Files.Get "resources/gnb.sa.tdd.conf") . | indent 4 }} 17 | -------------------------------------------------------------------------------- /charts/oai-gnb/templates/service.yaml: -------------------------------------------------------------------------------- 1 | 2 | apiVersion: v1 3 | kind: Service 4 | metadata: 5 | name: {{ include "common.names.fullname" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | {{- if .Values.commonAnnotations }} 12 | annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 13 | {{- end }} 14 | spec: 15 | type: {{ .Values.service.type }} 16 | {{- if (or (eq .Values.service.type "LoadBalancer") (eq .Values.service.type "NodePort")) }} 17 | externalTrafficPolicy: {{ .Values.service.externalTrafficPolicy | quote }} 18 | {{- end }} 19 | {{ if eq .Values.service.type "LoadBalancer" }} 20 | loadBalancerSourceRanges: {{ .Values.service.loadBalancerSourceRanges }} 21 | {{ end }} 22 | {{- if (and (eq .Values.service.type "LoadBalancer") (not (empty .Values.service.loadBalancerIP))) }} 23 | loadBalancerIP: {{ .Values.service.loadBalancerIP }} 24 | {{- end }} 25 | ports: 26 | - name: http 27 | port: 80 28 | protocol: TCP 29 | - name: gtp-u 30 | port: 2152 31 | protocol: UDP 32 | selector: {{- include "common.labels.matchLabels" . | nindent 4 }} 33 | -------------------------------------------------------------------------------- /charts/open5gs-amf/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "2.7.5" 3 | description: > 4 | Helm chart to deploy Open5gs AMF service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://open5gs.org 8 | icon: https://open5gs.org/assets/img/open5gs-logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: open5gs-amf 13 | version: 2.2.9 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - ngc 19 | - gradiant 20 | dependencies: 21 | - name: common 22 | repository: https://charts.bitnami.com/bitnami 23 | tags: 24 | - bitnami-common 25 | version: 1.x.x 26 | -------------------------------------------------------------------------------- /charts/open5gs-amf/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: 840da777-468b-46fd-8b0d-ed34a6ac92f8 2 | owners: # (optional, used to claim repository ownership) 3 | - name: gradiant 4 | email: sysadmin@gradiant.org 5 | - name: cgiraldo 6 | email: cgiraldo@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs-amf/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs amf image name 3 | */}} 4 | {{- define "open5gs.amf.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.amf.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "open5gs.amf.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/open5gs-amf/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | amf.yaml: | 8 | {{- if .Values.customOpen5gsConfig }} 9 | {{ toYaml .Values.customOpen5gsConfig | nindent 4 }} 10 | {{- else }} 11 | {{ tpl (.Files.Get "resources/config/amf.yaml") . | indent 4 }} 12 | {{- end }} 13 | -------------------------------------------------------------------------------- /charts/open5gs-amf/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/open5gs-amf/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.amf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-amf/templates/vmservicescrape.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.metrics.serviceScrape.enabled }} 2 | apiVersion: operator.victoriametrics.com/v1beta1 3 | kind: VMServiceScrape 4 | metadata: 5 | name: {{ include "common.names.fullname" . }} 6 | namespace: {{ default .Release.Namespace .Values.metrics.serviceScrape.namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | {{- if .Values.metrics.serviceScrape.additionalLabels }} 12 | {{- include "common.tplvalues.render" (dict "value" .Values.metrics.serviceScrape.additionalLabels "context" $) | nindent 4 }} 13 | {{- end }} 14 | app.kubernetes.io/component: metrics 15 | {{- if .Values.commonAnnotations }} 16 | annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | spec: 19 | selector: 20 | matchLabels: {{ include "common.labels.matchLabels" . | nindent 6 }} 21 | app.kubernetes.io/component: metrics 22 | endpoints: 23 | - port: metrics 24 | {{- if .Values.metrics.serviceScrape.scrape_interval }} 25 | scrape_interval: {{ .Values.metrics.serviceScrape.scrape_interval }} 26 | {{- end }} 27 | namespaceSelector: 28 | matchNames: 29 | - {{ .Release.Namespace | quote }} 30 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-ausf/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "2.7.5" 3 | description: > 4 | Helm chart to deploy Open5gs AUSF service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://open5gs.org 8 | icon: https://open5gs.org/assets/img/open5gs-logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: open5gs-ausf 13 | version: 2.2.9 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - ngc 19 | dependencies: 20 | - name: common 21 | repository: https://charts.bitnami.com/bitnami 22 | tags: 23 | - bitnami-common 24 | version: 1.x.x 25 | -------------------------------------------------------------------------------- /charts/open5gs-ausf/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: 7a9d86e8-df20-409c-8924-bc2f4c2999d0 2 | owners: # (optional, used to claim repository ownership) 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs-ausf/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs ausf image name 3 | */}} 4 | {{- define "open5gs.ausf.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.ausf.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "open5gs.ausf.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/open5gs-ausf/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | ausf.yaml: | 8 | {{- if .Values.customOpen5gsConfig }} 9 | {{ toYaml .Values.customOpen5gsConfig | nindent 4 }} 10 | {{- else }} 11 | {{ tpl (.Files.Get "resources/config/ausf.yaml") . | indent 4 }} 12 | {{- end }} 13 | -------------------------------------------------------------------------------- /charts/open5gs-ausf/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/open5gs-ausf/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.ausf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-bsf/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "2.7.5" 3 | description: > 4 | Helm chart to deploy Open5gs BSF service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://open5gs.org 8 | icon: https://open5gs.org/assets/img/open5gs-logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: open5gs-bsf 13 | version: 2.2.9 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - ngc 19 | dependencies: 20 | - name: common 21 | repository: https://charts.bitnami.com/bitnami 22 | tags: 23 | - bitnami-common 24 | version: 1.x.x 25 | -------------------------------------------------------------------------------- /charts/open5gs-bsf/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: 146edce0-d87d-4f8c-9c1b-1d8a8ac1b011 2 | owners: # (optional, used to claim repository ownership) 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs-bsf/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs bsf image name 3 | */}} 4 | {{- define "open5gs.bsf.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.bsf.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "open5gs.bsf.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/open5gs-bsf/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | bsf.yaml: | 8 | {{- if .Values.customOpen5gsConfig }} 9 | {{ toYaml .Values.customOpen5gsConfig | nindent 4 }} 10 | {{- else }} 11 | {{ tpl (.Files.Get "resources/config/bsf.yaml") . | indent 4 }} 12 | {{- end }} 13 | -------------------------------------------------------------------------------- /charts/open5gs-bsf/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/open5gs-bsf/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.bsf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-hss/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "2.7.5" 3 | description: > 4 | Helm chart to deploy Open5gs HSS service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://open5gs.org 8 | icon: https://open5gs.org/assets/img/open5gs-logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: open5gs-hss 13 | version: 2.2.9 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - epc 19 | - ngc 20 | - gradiant 21 | dependencies: 22 | - name: common 23 | repository: https://charts.bitnami.com/bitnami 24 | tags: 25 | - bitnami-common 26 | version: 1.x.x 27 | - name: mongodb 28 | version: ~12.1.19 29 | repository: https://charts.bitnami.com/bitnami 30 | condition: mongodb.enabled 31 | -------------------------------------------------------------------------------- /charts/open5gs-hss/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: 122d38ff-e2d5-4bdb-988d-0ee5a69dc092 2 | owners: # (optional, used to claim repository ownership) 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs-hss/resources/config/hss.yaml: -------------------------------------------------------------------------------- 1 | logger: 2 | level: {{ .Values.config.logLevel }} 3 | parameter: {} 4 | global: 5 | hss: 6 | freeDiameter: hss.conf 7 | -------------------------------------------------------------------------------- /charts/open5gs-hss/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs hss image name 3 | */}} 4 | {{- define "open5gs.hss.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.hss.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "open5gs.hss.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/open5gs-hss/templates/configmap-diameter.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }}-diameter 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | hss.conf: | 8 | {{ tpl (.Files.Get "resources/config/diameter-hss.conf") . | indent 4 }} 9 | -------------------------------------------------------------------------------- /charts/open5gs-hss/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | hss.yaml: | 8 | {{- if .Values.customOpen5gsConfig }} 9 | {{ toYaml .Values.customOpen5gsConfig | nindent 4 }} 10 | {{- else }} 11 | {{ tpl (.Files.Get "resources/config/hss.yaml") . | indent 4 }} 12 | {{- end }} 13 | -------------------------------------------------------------------------------- /charts/open5gs-hss/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/open5gs-hss/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.hss.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-mme/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "2.7.5" 3 | description: > 4 | Helm chart to deploy Open5gs MME service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://open5gs.org 8 | icon: https://open5gs.org/assets/img/open5gs-logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: open5gs-mme 13 | version: 2.2.9 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - epc 19 | - ngc 20 | dependencies: 21 | - name: common 22 | repository: https://charts.bitnami.com/bitnami 23 | tags: 24 | - bitnami-common 25 | version: 1.x.x 26 | -------------------------------------------------------------------------------- /charts/open5gs-mme/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: 9763df06-67f8-4398-bce8-f82332b382bd 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs-mme/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs mme image name 3 | */}} 4 | {{- define "open5gs.mme.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.mme.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "open5gs.mme.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/open5gs-mme/templates/configmap-diameter.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }}-diameter 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | mme.conf: | 8 | {{ tpl (.Files.Get "resources/config/diameter-mme.conf") . | indent 4 }} 9 | -------------------------------------------------------------------------------- /charts/open5gs-mme/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | mme.yaml: | 8 | {{- if .Values.customOpen5gsConfig }} 9 | {{ toYaml .Values.customOpen5gsConfig | nindent 4 }} 10 | {{- else }} 11 | {{ tpl (.Files.Get "resources/config/mme.yaml") . | indent 4 }} 12 | {{- end }} 13 | -------------------------------------------------------------------------------- /charts/open5gs-mme/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/open5gs-mme/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.mme.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-nrf/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "2.7.5" 3 | description: > 4 | Helm chart to deploy Open5gs NRF service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://open5gs.org 8 | icon: https://open5gs.org/assets/img/open5gs-logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: open5gs-nrf 13 | version: 2.2.9 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - epc 19 | - ngc 20 | dependencies: 21 | - name: common 22 | repository: https://charts.bitnami.com/bitnami 23 | tags: 24 | - bitnami-common 25 | version: 1.x.x 26 | -------------------------------------------------------------------------------- /charts/open5gs-nrf/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: 4af1d6ab-9ff7-466c-b54e-75de5db27755 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs-nrf/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs nrf image name 3 | */}} 4 | {{- define "open5gs.nrf.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.nrf.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "open5gs.nrf.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} 25 | -------------------------------------------------------------------------------- /charts/open5gs-nrf/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | nrf.yaml: | 8 | {{- if .Values.customOpen5gsConfig }} 9 | {{ toYaml .Values.customOpen5gsConfig | nindent 4 }} 10 | {{- else }} 11 | {{ tpl (.Files.Get "resources/config/nrf.yaml") . | indent 4 }} 12 | {{- end }} 13 | -------------------------------------------------------------------------------- /charts/open5gs-nrf/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/open5gs-nrf/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.nrf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-nssf/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "2.7.5" 3 | description: > 4 | Helm chart to deploy Open5gs NSSF service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://open5gs.org 8 | icon: https://open5gs.org/assets/img/open5gs-logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: open5gs-nssf 13 | version: 2.2.9 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - ngc 19 | dependencies: 20 | - name: common 21 | repository: https://charts.bitnami.com/bitnami 22 | tags: 23 | - bitnami-common 24 | version: 1.x.x 25 | -------------------------------------------------------------------------------- /charts/open5gs-nssf/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: bbfc177d-cb06-4fc5-8839-8b98c420d882 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs-nssf/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs nssf image name 3 | */}} 4 | {{- define "open5gs.nssf.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.nssf.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "open5gs.nssf.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/open5gs-nssf/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | nssf.yaml: | 8 | {{- if .Values.customOpen5gsConfig }} 9 | {{ toYaml .Values.customOpen5gsConfig | nindent 4 }} 10 | {{- else }} 11 | {{ tpl (.Files.Get "resources/config/nssf.yaml") . | indent 4 }} 12 | {{- end }} 13 | -------------------------------------------------------------------------------- /charts/open5gs-nssf/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/open5gs-nssf/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.nssf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-pcf/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "2.7.5" 3 | description: > 4 | Helm chart to deploy Open5gs PCF service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://open5gs.org 8 | icon: https://open5gs.org/assets/img/open5gs-logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: open5gs-pcf 13 | version: 2.2.9 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - ngc 19 | - gradiant 20 | dependencies: 21 | - name: common 22 | repository: https://charts.bitnami.com/bitnami 23 | tags: 24 | - bitnami-common 25 | version: 1.x.x 26 | - name: mongodb 27 | version: ~12.1.19 28 | repository: https://charts.bitnami.com/bitnami 29 | condition: mongodb.enabled 30 | -------------------------------------------------------------------------------- /charts/open5gs-pcf/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: cdb4fbbf-da92-4a4b-ac96-fc8eb58937f2 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs-pcf/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs pcf image name 3 | */}} 4 | {{- define "open5gs.pcf.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.pcf.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "open5gs.pcf.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/open5gs-pcf/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | pcf.yaml: | 8 | {{- if .Values.customOpen5gsConfig }} 9 | {{ toYaml .Values.customOpen5gsConfig | nindent 4 }} 10 | {{- else }} 11 | {{ tpl (.Files.Get "resources/config/pcf.yaml") . | indent 4 }} 12 | {{- end }} 13 | -------------------------------------------------------------------------------- /charts/open5gs-pcf/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/open5gs-pcf/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.pcf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-pcf/templates/vmservicescrape.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.metrics.serviceScrape.enabled }} 2 | apiVersion: operator.victoriametrics.com/v1beta1 3 | kind: VMServiceScrape 4 | metadata: 5 | name: {{ include "common.names.fullname" . }} 6 | namespace: {{ default .Release.Namespace .Values.metrics.serviceScrape.namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | {{- if .Values.metrics.serviceScrape.additionalLabels }} 12 | {{- include "common.tplvalues.render" (dict "value" .Values.metrics.serviceScrape.additionalLabels "context" $) | nindent 4 }} 13 | {{- end }} 14 | app.kubernetes.io/component: metrics 15 | {{- if .Values.commonAnnotations }} 16 | annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | spec: 19 | selector: 20 | matchLabels: {{ include "common.labels.matchLabels" . | nindent 6 }} 21 | app.kubernetes.io/component: metrics 22 | endpoints: 23 | - port: metrics 24 | {{- if .Values.metrics.serviceScrape.scrape_interval }} 25 | scrape_interval: {{ .Values.metrics.serviceScrape.scrape_interval }} 26 | {{- end }} 27 | namespaceSelector: 28 | matchNames: 29 | - {{ .Release.Namespace | quote }} 30 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-pcrf/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "2.7.5" 3 | description: > 4 | Helm chart to deploy Open5gs PCRF service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://open5gs.org 8 | icon: https://open5gs.org/assets/img/open5gs-logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: open5gs-pcrf 13 | version: 2.2.9 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - epc 19 | - ngc 20 | - gradiant 21 | dependencies: 22 | - name: common 23 | repository: https://charts.bitnami.com/bitnami 24 | tags: 25 | - bitnami-common 26 | version: 1.x.x 27 | - name: mongodb 28 | version: ~12.1.19 29 | repository: https://charts.bitnami.com/bitnami 30 | condition: mongodb.enabled 31 | -------------------------------------------------------------------------------- /charts/open5gs-pcrf/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: ed5466ad-a772-4596-957a-e481961691c2 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs-pcrf/resources/config/pcrf.yaml: -------------------------------------------------------------------------------- 1 | logger: 2 | level: {{ .Values.config.logLevel }} 3 | parameter: {} 4 | global: 5 | pcrf: 6 | freeDiameter: pcrf.conf 7 | -------------------------------------------------------------------------------- /charts/open5gs-pcrf/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs pcrf image name 3 | */}} 4 | {{- define "open5gs.pcrf.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.pcrf.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "open5gs.pcrf.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/open5gs-pcrf/templates/configmap-diameter.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }}-diameter 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | pcrf.conf: | 8 | {{ tpl (.Files.Get "resources/config/diameter-pcrf.conf") . | indent 4 }} 9 | -------------------------------------------------------------------------------- /charts/open5gs-pcrf/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | pcrf.yaml: | 8 | {{- if .Values.customOpen5gsConfig }} 9 | {{ toYaml .Values.customOpen5gsConfig | nindent 4 }} 10 | {{- else }} 11 | {{ tpl (.Files.Get "resources/config/pcrf.yaml") . | indent 4 }} 12 | {{- end }} 13 | -------------------------------------------------------------------------------- /charts/open5gs-pcrf/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/open5gs-pcrf/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.pcrf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-scp/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "2.7.5" 3 | description: > 4 | Helm chart to deploy Open5gs scp service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://open5gs.org 8 | icon: https://open5gs.org/assets/img/open5gs-logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: open5gs-scp 13 | version: 2.2.9 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - epc 19 | - ngc 20 | - gradiant 21 | dependencies: 22 | - name: common 23 | repository: https://charts.bitnami.com/bitnami 24 | tags: 25 | - bitnami-common 26 | version: 1.x.x 27 | - name: mongodb 28 | version: ~12.1.19 29 | repository: https://charts.bitnami.com/bitnami 30 | condition: mongodb.enabled 31 | -------------------------------------------------------------------------------- /charts/open5gs-scp/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: 5deda911-650c-4d6a-b1c4-3cf62f99e63f 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs-scp/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs scp image name 3 | */}} 4 | {{- define "open5gs.scp.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.scp.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "open5gs.scp.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} 25 | -------------------------------------------------------------------------------- /charts/open5gs-scp/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | scp.yaml: | 8 | {{- if .Values.customOpen5gsConfig }} 9 | {{ toYaml .Values.customOpen5gsConfig | nindent 4 }} 10 | {{- else }} 11 | {{ tpl (.Files.Get "resources/config/scp.yaml") . | indent 4 }} 12 | {{- end }} 13 | -------------------------------------------------------------------------------- /charts/open5gs-scp/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/open5gs-scp/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.scp.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-sgwc/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "2.7.5" 3 | description: > 4 | Helm chart to deploy Open5gs SGWC service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://open5gs.org 8 | icon: https://open5gs.org/assets/img/open5gs-logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: open5gs-sgwc 13 | version: 2.2.9 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - ngc 19 | dependencies: 20 | - name: common 21 | repository: https://charts.bitnami.com/bitnami 22 | tags: 23 | - bitnami-common 24 | version: 1.x.x 25 | -------------------------------------------------------------------------------- /charts/open5gs-sgwc/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: 34ba394a-893c-4400-839c-d96b25c24ffc 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs-sgwc/resources/config/sgwc.yaml: -------------------------------------------------------------------------------- 1 | {{ $open5gsName := .Release.Name }} 2 | 3 | logger: 4 | level: {{ .Values.config.logLevel }} 5 | parameter: {} 6 | global: 7 | sgwc: 8 | gtpc: 9 | server: 10 | - dev: "eth0" 11 | pfcp: 12 | server: 13 | - dev: "eth0" 14 | client: 15 | sgwu: 16 | {{- range .Values.config.pfcp.client.sgwuList }} 17 | - address: {{ default (printf "%s-sgwu-pfcp" $open5gsName) .address }} 18 | apn: {{ .apn }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-sgwc/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs sgwc image name 3 | */}} 4 | {{- define "open5gs.sgwc.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.sgwc.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "open5gs.sgwc.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/open5gs-sgwc/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | sgwc.yaml: | 8 | {{- if .Values.customOpen5gsConfig }} 9 | {{ toYaml .Values.customOpen5gsConfig | nindent 4 }} 10 | {{- else }} 11 | {{ tpl (.Files.Get "resources/config/sgwc.yaml") . | indent 4 }} 12 | {{- end }} 13 | -------------------------------------------------------------------------------- /charts/open5gs-sgwc/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/open5gs-sgwc/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.sgwc.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-sgwu/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "2.7.5" 3 | description: > 4 | Helm chart to deploy Open5gs SGWU service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://open5gs.org 8 | icon: https://open5gs.org/assets/img/open5gs-logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: open5gs-sgwu 13 | version: 2.2.9 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - ngc 19 | dependencies: 20 | - name: common 21 | repository: https://charts.bitnami.com/bitnami 22 | tags: 23 | - bitnami-common 24 | version: 1.x.x 25 | -------------------------------------------------------------------------------- /charts/open5gs-sgwu/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: a7f92b8a-74b0-4001-a524-0c21c7c5e282 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs-sgwu/resources/config/sgwu.yaml: -------------------------------------------------------------------------------- 1 | {{ $open5gsName := .Release.Name }} 2 | 3 | logger: 4 | level: {{ .Values.config.logLevel }} 5 | parameter: {} 6 | global: 7 | sgwu: 8 | pfcp: 9 | server: 10 | - dev: "eth0" 11 | client: 12 | sgwc: 13 | - address: {{ default (printf "%s-sgwc-pfcp" $open5gsName) .Values.config.pfcp.client.sgwc.address }} 14 | gtpu: 15 | server: 16 | - dev: {{ default "eth0" .Values.config.gtpu.server.dev }} 17 | -------------------------------------------------------------------------------- /charts/open5gs-sgwu/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs sgwu image name 3 | */}} 4 | {{- define "open5gs.sgwu.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.sgwu.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "open5gs.sgwu.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/open5gs-sgwu/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | sgwu.yaml: | 8 | {{- if .Values.customOpen5gsConfig }} 9 | {{ toYaml .Values.customOpen5gsConfig | nindent 4 }} 10 | {{- else }} 11 | {{ tpl (.Files.Get "resources/config/sgwu.yaml") . | indent 4 }} 12 | {{- end }} 13 | -------------------------------------------------------------------------------- /charts/open5gs-sgwu/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/open5gs-sgwu/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.sgwu.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-smf/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "2.7.5" 3 | description: > 4 | Helm chart to deploy Open5gs SMF service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://open5gs.org 8 | icon: https://open5gs.org/assets/img/open5gs-logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: open5gs-smf 13 | version: 2.2.9 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - ngc 19 | dependencies: 20 | - name: common 21 | repository: https://charts.bitnami.com/bitnami 22 | tags: 23 | - bitnami-common 24 | version: 1.x.x 25 | -------------------------------------------------------------------------------- /charts/open5gs-smf/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: fa717312-ebf9-4688-bfd7-80fee1292fd9 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs-smf/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs smf image name 3 | */}} 4 | {{- define "open5gs.smf.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.smf.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "open5gs.smf.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/open5gs-smf/templates/configmap-diameter.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.config.pcrf.enabled }} 2 | apiVersion: v1 3 | kind: ConfigMap 4 | metadata: 5 | name: {{ include "common.names.fullname" . }}-diameter 6 | labels: {{- include "common.labels.standard" . | nindent 4 }} 7 | data: 8 | smf.conf: | 9 | {{ tpl (.Files.Get "resources/config/diameter-smf.conf") . | indent 4 }} 10 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-smf/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | smf.yaml: | 8 | {{- if .Values.customOpen5gsConfig }} 9 | {{ toYaml .Values.customOpen5gsConfig | nindent 4 }} 10 | {{- else }} 11 | {{ tpl (.Files.Get "resources/config/smf.yaml") . | indent 4 }} 12 | {{- end }} 13 | -------------------------------------------------------------------------------- /charts/open5gs-smf/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/open5gs-smf/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.smf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-smf/templates/vmservicescrape.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.metrics.serviceScrape.enabled }} 2 | apiVersion: operator.victoriametrics.com/v1beta1 3 | kind: VMServiceScrape 4 | metadata: 5 | name: {{ include "common.names.fullname" . }} 6 | namespace: {{ default .Release.Namespace .Values.metrics.serviceScrape.namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | {{- if .Values.metrics.serviceScrape.additionalLabels }} 12 | {{- include "common.tplvalues.render" (dict "value" .Values.metrics.serviceScrape.additionalLabels "context" $) | nindent 4 }} 13 | {{- end }} 14 | app.kubernetes.io/component: metrics 15 | {{- if .Values.commonAnnotations }} 16 | annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | spec: 19 | selector: 20 | matchLabels: {{ include "common.labels.matchLabels" . | nindent 6 }} 21 | app.kubernetes.io/component: metrics 22 | endpoints: 23 | - port: metrics 24 | {{- if .Values.metrics.serviceScrape.scrape_interval }} 25 | scrape_interval: {{ .Values.metrics.serviceScrape.scrape_interval }} 26 | {{- end }} 27 | namespaceSelector: 28 | matchNames: 29 | - {{ .Release.Namespace | quote }} 30 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-udm/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "2.7.5" 3 | description: > 4 | Helm chart to deploy Open5gs UDM service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://open5gs.org 8 | icon: https://open5gs.org/assets/img/open5gs-logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: open5gs-udm 13 | version: 2.2.9 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - ngc 19 | - gradiant 20 | dependencies: 21 | - name: common 22 | repository: https://charts.bitnami.com/bitnami 23 | tags: 24 | - bitnami-common 25 | version: 1.x.x 26 | -------------------------------------------------------------------------------- /charts/open5gs-udm/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: 5a48d477-96fa-443c-a14c-0cceb6d6e841 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs-udm/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs udm image name 3 | */}} 4 | {{- define "open5gs.udm.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.udm.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "open5gs.udm.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/open5gs-udm/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | udm.yaml: | 8 | {{- if .Values.customOpen5gsConfig }} 9 | {{ toYaml .Values.customOpen5gsConfig | nindent 4 }} 10 | {{- else }} 11 | {{ tpl (.Files.Get "resources/config/udm.yaml") . | indent 4 }} 12 | {{- end }} 13 | -------------------------------------------------------------------------------- /charts/open5gs-udm/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/open5gs-udm/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.udm.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-udr/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "2.7.5" 3 | description: > 4 | Helm chart to deploy Open5gs UDR service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://open5gs.org 8 | icon: https://open5gs.org/assets/img/open5gs-logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: open5gs-udr 13 | version: 2.2.9 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - ngc 19 | - gradiant 20 | dependencies: 21 | - name: common 22 | repository: https://charts.bitnami.com/bitnami 23 | tags: 24 | - bitnami-common 25 | version: 1.x.x 26 | - name: mongodb 27 | version: ~12.1.19 28 | repository: https://charts.bitnami.com/bitnami 29 | condition: mongodb.enabled 30 | -------------------------------------------------------------------------------- /charts/open5gs-udr/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: f8bec765-04f5-4dc7-b883-16ee4976fd01 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs-udr/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs udr image name 3 | */}} 4 | {{- define "open5gs.udr.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.udr.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "open5gs.udr.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/open5gs-udr/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | udr.yaml: | 8 | {{- if .Values.customOpen5gsConfig }} 9 | {{ toYaml .Values.customOpen5gsConfig | nindent 4 }} 10 | {{- else }} 11 | {{ tpl (.Files.Get "resources/config/udr.yaml") . | indent 4 }} 12 | {{- end }} 13 | -------------------------------------------------------------------------------- /charts/open5gs-udr/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/open5gs-udr/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.udr.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-upf/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "2.7.5" 3 | description: > 4 | Helm chart to deploy Open5gs UPF service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://open5gs.org 8 | icon: https://open5gs.org/assets/img/open5gs-logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: open5gs-upf 13 | version: 2.2.9 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - ngc 19 | - gradiant 20 | dependencies: 21 | - name: common 22 | repository: https://charts.bitnami.com/bitnami 23 | tags: 24 | - bitnami-common 25 | version: 1.x.x 26 | -------------------------------------------------------------------------------- /charts/open5gs-upf/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: bdcfb01a-6f74-451d-a7ee-b7965c69c5f4 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs-upf/resources/k8s-entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | echo "Executing k8s customized entrypoint.sh" 5 | 6 | {{- range .Values.config.subnetList }} 7 | {{- if .createDev }} 8 | echo "Creating net device {{ .dev }}" 9 | if grep "{{ .dev }}" /proc/net/dev > /dev/null; then 10 | echo "Warnin: Net device {{ .dev }} already exists! may you need to set createDev: false"; 11 | exit 1 12 | fi 13 | 14 | ip tuntap add name {{ .dev }} mode tun 15 | ip link set {{ .dev }} up 16 | echo "Setting IP {{ .gateway }} to device {{ .dev }}" 17 | ip addr add {{ .gateway }}/{{ .mask }} dev {{ .dev }}; 18 | sysctl -w net.ipv4.ip_forward=1; 19 | {{- if .enableNAT }} 20 | echo "Enable NAT for {{ .subnet }} and device {{ .dev }}" 21 | iptables -t nat -A POSTROUTING -s {{ .subnet }} ! -o {{ .dev }} -j MASQUERADE; 22 | {{- end }} 23 | {{- end }} 24 | {{- end }} 25 | 26 | $@ -------------------------------------------------------------------------------- /charts/open5gs-upf/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs upf image name 3 | */}} 4 | {{- define "open5gs.upf.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.upf.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "open5gs.upf.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/open5gs-upf/templates/configmap-entrypoint.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }}-entrypoint 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | k8s-entrypoint.sh: | 8 | {{ tpl (.Files.Get "resources/k8s-entrypoint.sh") . | indent 4 }} 9 | 10 | -------------------------------------------------------------------------------- /charts/open5gs-upf/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | upf.yaml: | 8 | {{- if .Values.customOpen5gsConfig }} 9 | {{ toYaml .Values.customOpen5gsConfig | nindent 4 }} 10 | {{- else }} 11 | {{ tpl (.Files.Get "resources/config/upf.yaml") . | indent 4 }} 12 | {{- end }} 13 | -------------------------------------------------------------------------------- /charts/open5gs-upf/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/open5gs-upf/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.upf.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs-webui/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "2.7.5" 3 | description: > 4 | Helm chart to deploy Open5gs WebUI service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - http://open5gs.org 8 | icon: https://open5gs.org/assets/img/open5gs-logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | - email: avrodriguez@gradiant.org 13 | name: avrodriguez 14 | name: open5gs-webui 15 | version: 2.2.9 16 | annotations: 17 | artifacthub.io/category: networking 18 | keywords: 19 | - network 20 | - ngc 21 | - gradiant 22 | dependencies: 23 | - name: common 24 | repository: https://charts.bitnami.com/bitnami 25 | tags: 26 | - bitnami-common 27 | version: 1.x.x 28 | - name: mongodb 29 | version: ~12.1.19 30 | repository: https://charts.bitnami.com/bitnami 31 | condition: mongodb.enabled 32 | -------------------------------------------------------------------------------- /charts/open5gs-webui/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: e653af7a-f438-4d0d-aad6-f61d58d07c7e 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs-webui/ci/test-install-values.yaml: -------------------------------------------------------------------------------- 1 | ingress: 2 | enabled: false 3 | 4 | mongodb: 5 | enabled: true 6 | -------------------------------------------------------------------------------- /charts/open5gs-webui/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs webui image name 3 | */}} 4 | {{- define "open5gs.webui.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.webui.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "open5gs.webui.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/open5gs-webui/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | add_admin.sh: |- 8 | {{ tpl (.Files.Get "resources/add_admin.sh") . | indent 4 }} -------------------------------------------------------------------------------- /charts/open5gs-webui/templates/ingress.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.ingress.enabled -}} 2 | {{- $kubeVersion := .Capabilities.KubeVersion.GitVersion -}} 3 | apiVersion: networking.k8s.io/v1 4 | kind: Ingress 5 | metadata: 6 | name: {{ include "common.names.fullname" . }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | annotations: 9 | {{- with .Values.ingress.annotations }} 10 | {{- toYaml . | nindent 4 }} 11 | {{- end }} 12 | spec: 13 | {{- if and .Values.ingress.ingressClassName (semverCompare ">=1.19-0" $kubeVersion) }} 14 | ingressClassName: {{ .Values.ingress.ingressClassName }} 15 | {{- end }} 16 | rules: 17 | - host: {{ .Values.ingress.hostname | default (printf "%s-%s.ingress.lab5g.gradiant.org" .Release.Name .Release.Namespace) }} 18 | http: 19 | paths: 20 | - path: {{ .Values.ingress.path }} 21 | pathType: {{ .Values.ingress.pathType }} 22 | backend: 23 | service: 24 | name: {{ include "common.names.fullname" $ }} 25 | port: 26 | name: http 27 | {{- if .Values.ingress.tls }} 28 | tls: 29 | - hosts: 30 | - {{ .Values.ingress.hostname | default (printf "%s-%s.ingress.lab5g.gradiant.org" .Release.Name .Release.Namespace) }} 31 | secretName: {{ printf "%s-tls" .Values.ingress.hostname }} 32 | {{- end }} 33 | {{- end }} 34 | -------------------------------------------------------------------------------- /charts/open5gs-webui/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "open5gs.webui.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/open5gs/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: 9d464118-bda0-478b-852b-494e13ab085d 2 | owners: # (optional, used to claim repository ownership) 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/open5gs/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper Open5gs image name 3 | */}} 4 | {{- define "open5gs.populate.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.populate.image "global" .Values.global ) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "open5gs.populate.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.populate.image ) "global" .Values.global) -}} 13 | {{- end -}} -------------------------------------------------------------------------------- /charts/packetrusher/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "97f9f0c" 3 | description: > 4 | Helm chart to deploy PacketRusher service on Kubernetes. 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - https://github.com/HewlettPackard/PacketRusher 8 | maintainers: 9 | - email: avrodriguez@gradiant.org 10 | name: avrodriguez 11 | name: packetrusher 12 | version: 0.0.2 13 | annotations: 14 | artifacthub.io/category: networking 15 | keywords: 16 | - network 17 | - gnb 18 | - ue 19 | - gradiant 20 | dependencies: 21 | - name: common 22 | repository: https://charts.bitnami.com/bitnami 23 | tags: 24 | - bitnami-common 25 | version: 1.x.x 26 | -------------------------------------------------------------------------------- /charts/packetrusher/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: af4a2f83-7d49-4d0a-9977-eaafa3bd0d77 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/packetrusher/resources/config/config.yml: -------------------------------------------------------------------------------- 1 | gnodeb: 2 | controlif: 3 | ip: "${GNB_NGAP_ADDR}" 4 | port: 9487 5 | dataif: 6 | ip: "${GNB_GTPU_ADDR}" 7 | port: 2152 8 | plmnlist: 9 | mcc: "{{ .Values.config.gnb.mcc }}" 10 | mnc: "{{ .Values.config.gnb.mnc }}" 11 | tac: "{{ .Values.config.gnb.tac }}" 12 | gnbid: "{{ .Values.config.gnb.gnbid }}" 13 | slicesupportlist: 14 | sst: "{{ .Values.config.gnb.sst }}" 15 | sd: "{{ .Values.config.gnb.sd }}" 16 | 17 | ue: 18 | msin: "{{ .Values.config.ue.msin }}" 19 | key: "{{ .Values.config.ue.key }}" 20 | opc: "{{ .Values.config.ue.opc }}" 21 | amf: "8000" 22 | sqn: "00000000" 23 | dnn: "{{ .Values.config.ue.dnn }}" 24 | hplmn: 25 | mcc: "{{ .Values.config.ue.hplmn.mcc }}" 26 | mnc: "{{ .Values.config.ue.hplmn.mnc }}" 27 | snssai: 28 | sst: {{ .Values.config.ue.sst }} 29 | sd: "{{ .Values.config.ue.sd }}" 30 | integrity: 31 | nia0: false 32 | nia1: false 33 | nia2: true 34 | nia3: false 35 | ciphering: 36 | nea0: false 37 | nea1: false 38 | nea2: true 39 | nea3: false 40 | 41 | amfif: 42 | ip: "${AMF_ADDR}" 43 | port: 38412 -------------------------------------------------------------------------------- /charts/packetrusher/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | {{/* 2 | Return the proper PacketRusher image name 3 | */}} 4 | {{- define "packetrusher.image" -}} 5 | {{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} 6 | {{- end -}} 7 | 8 | {{/* 9 | Return the proper Docker Image Registry Secret Names 10 | */}} 11 | {{- define "packetrusher.imagePullSecrets" -}} 12 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image ) "global" .Values.global) -}} 13 | {{- end -}} 14 | 15 | {{/* 16 | Create the name of the service account to use 17 | */}} 18 | {{- define "packetrusher.serviceAccountName" -}} 19 | {{- if .Values.serviceAccount.create -}} 20 | {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} 21 | {{- else -}} 22 | {{ default "default" .Values.serviceAccount.name }} 23 | {{- end -}} 24 | {{- end -}} -------------------------------------------------------------------------------- /charts/packetrusher/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | config.yml: | 8 | {{ tpl (.Files.Get "resources/config/config.yml") . | indent 4 }} 9 | -------------------------------------------------------------------------------- /charts/packetrusher/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/packetrusher/templates/serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.serviceAccount.create }} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | name: {{ include "packetrusher.serviceAccountName" . }} 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | annotations: 12 | {{- if .Values.serviceAccount.annotations }} 13 | {{- include "common.tplvalues.render" ( dict "value" .Values.serviceAccount.annotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | {{- if .Values.commonAnnotations }} 16 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 17 | {{- end }} 18 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 19 | {{- end }} -------------------------------------------------------------------------------- /charts/srs-epc/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | appVersion: "23.11" 3 | description: > 4 | SRS epc 5 | home: https://github.com/gradiant/5g-charts 6 | sources: 7 | - https://github.com/srsran/srsRAN_4G 8 | icon: https://docs.srsran.com/en/latest/_static/logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: srs-epc 13 | version: 0.2.1 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - epc 19 | -------------------------------------------------------------------------------- /charts/srs-epc/README.md: -------------------------------------------------------------------------------- 1 | # srs-enb 2 | 3 | ![Version: 0.1.1](https://img.shields.io/badge/Version-0.1.1-informational?style=flat-square) ![AppVersion: 20.10.1](https://img.shields.io/badge/AppVersion-20.10.1-informational?style=flat-square) 4 | 5 | SRS enodeb 6 | 7 | **Homepage:** 8 | 9 | ## Maintainers 10 | 11 | | Name | Email | Url | 12 | | ---- | ------ | --- | 13 | | cgiraldo | cgiraldo@gradiant.org | | 14 | 15 | ## Source Code 16 | 17 | * 18 | 19 | ## Values 20 | 21 | | Key | Type | Default | Description | 22 | |-----|------|---------|-------------| 23 | | device.args | string | `"auto"` | | 24 | | device.name | string | `"auto"` | | 25 | | enb.mcc | string | `"001"` | | 26 | | enb.mme | string | `"mme"` | | 27 | | enb.mnc | string | `"01"` | | 28 | | enb.tac | string | `"0001"` | | 29 | | image.pullPolicy | string | `"IfNotPresent"` | | 30 | | image.registry | string | `"docker.io"` | | 31 | | image.repository | string | `"gradiant/srs-lte"` | | 32 | | image.tag | string | `"20_10_1"` | | 33 | | resources.limits."ettus.com/usrp" | int | `1` | | 34 | 35 | ---------------------------------------------- 36 | Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0) 37 | -------------------------------------------------------------------------------- /charts/srs-epc/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: 5c4d8fdc-19fe-475b-bc25-a9c400f65270 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/srs-epc/resources/user_db.csv: -------------------------------------------------------------------------------- 1 | # 2 | # .csv to store UE's information in HSS 3 | # Kept in the following format: "Name,Auth,IMSI,Key,OP_Type,OP,AMF,SQN,QCI,IP_alloc" 4 | # 5 | # Name: Human readable name to help distinguish UE's. Ignored by the HSS 6 | # IMSI: UE's IMSI value 7 | # Auth: Authentication algorithm used by the UE. Valid algorithms are XOR 8 | # (xor) and MILENAGE (mil) 9 | # Key: UE's key, where other keys are derived from. Stored in hexadecimal 10 | # OP_Type: Operator's code type, either OP or OPc 11 | # OP/OPc: Operator Code/Cyphered Operator Code, stored in hexadecimal 12 | # AMF: Authentication management field, stored in hexadecimal 13 | # SQN: UE's Sequence number for freshness of the authentication 14 | # QCI: QoS Class Identifier for the UE's default bearer. 15 | # IP_alloc: IP allocation stratagy for the SPGW. 16 | # With 'dynamic' the SPGW will automatically allocate IPs 17 | # With a valid IPv4 (e.g. '172.16.0.2') the UE will have a statically assigned IP. 18 | # 19 | # Note: Lines starting by '#' are ignored and will be overwritten 20 | {{- range .Values.users }} 21 | {{ .name }},mil,{{ .imsi}},{{ .key }},opc,{{ .opc }},8000,000000001234,7,dynamic 22 | {{- end }} -------------------------------------------------------------------------------- /charts/srs-epc/templates/NOTES.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gradiant/5g-charts/5ca31a2e8d48fe7c74eaef0f6a528f8913a43be7/charts/srs-epc/templates/NOTES.txt -------------------------------------------------------------------------------- /charts/srs-epc/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "srsepc.fullname" . }} 5 | labels: 6 | {{ include "srsepc.labels.standard" . | nindent 4 }} 7 | data: 8 | epc.conf: | 9 | {{ tpl (.Files.Get "resources/epc.conf") . | indent 4 }} 10 | user_db.csv: | 11 | {{ tpl (.Files.Get "resources/user_db.csv") . | indent 4 }} 12 | -------------------------------------------------------------------------------- /charts/srs-epc/templates/mme-svc.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Service 3 | metadata: 4 | name: {{ include "srsepc.fullname" . }}-mme 5 | labels: 6 | {{ include "srsepc.labels.standard" . | indent 4 }} 7 | app.kubernetes.io/component: mme 8 | spec: 9 | ports: 10 | - name: s1ap 11 | port: 36412 12 | protocol: SCTP 13 | - name: s6a 14 | port: 3868 15 | protocol: SCTP 16 | - name: gtp-c 17 | port: 2123 18 | protocol: UDP 19 | publishNotReadyAddresses: true 20 | selector: 21 | app.kubernetes.io/name: {{ include "srsepc.name" . }} 22 | app.kubernetes.io/instance: {{ .Release.Name }} 23 | -------------------------------------------------------------------------------- /charts/srs-epc/templates/registry-secret.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.imageCredentials }} 2 | {{- if .Values.imageCredentials.registry }} 3 | apiVersion: v1 4 | kind: Secret 5 | 6 | metadata: 7 | name: {{ include "srsepc.fullname" . }}-registry 8 | labels: 9 | {{ include "srsepc.labels.standard" . | indent 4 }} 10 | type: kubernetes.io/dockerconfigjson 11 | data: 12 | .dockerconfigjson: {{ template "srsepc.dockerconfig" . }} 13 | {{- end }} 14 | {{- end }} -------------------------------------------------------------------------------- /charts/srs-epc/templates/statefulset.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: apps/v1 2 | kind: StatefulSet 3 | metadata: 4 | name: {{ include "srsepc.fullname" . }} 5 | labels: 6 | {{ include "srsepc.labels.standard" . | nindent 4 }} 7 | spec: 8 | replicas: 1 9 | serviceName: {{ include "srsepc.fullname" . }} 10 | selector: 11 | matchLabels: 12 | app.kubernetes.io/name: {{ include "srsepc.name" . }} 13 | app.kubernetes.io/instance: {{ .Release.Name | quote }} 14 | template: 15 | metadata: 16 | labels: 17 | app.kubernetes.io/name: {{ include "srsepc.name" . }} 18 | app.kubernetes.io/instance: {{ .Release.Name | quote }} 19 | spec: 20 | {{ include "srsepc.imagePullSecrets" . | indent 6 }} 21 | containers: 22 | - name: epc 23 | image: {{ template "srsepc.image" . }} 24 | imagePullPolicy: {{ .Values.image.pullPolicy | quote }} 25 | args: 26 | - "epc" 27 | securityContext: 28 | privileged: true 29 | resources: 30 | {{ toYaml .Values.resources | indent 10 }} 31 | volumeMounts: 32 | - name: srsepc-config 33 | mountPath: /etc/srslte/epc.conf 34 | subPath: "epc.conf" 35 | - name: srsepc-config 36 | mountPath: /etc/srslte/user_db.csv 37 | subPath: "user_db.csv" 38 | volumes: 39 | - name: srsepc-config 40 | configMap: 41 | name: {{ include "srsepc.fullname" . }} -------------------------------------------------------------------------------- /charts/srs-epc/values.yaml: -------------------------------------------------------------------------------- 1 | image: 2 | registry: docker.io 3 | repository: gradiant/srsran-4g 4 | tag: "23_11" 5 | ## Specify a imagePullPolicy 6 | ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' 7 | ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images 8 | ## 9 | pullPolicy: IfNotPresent 10 | ## Optionally specify an array of imagePullSecrets. 11 | ## Secrets must be manually created in the namespace. 12 | ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ 13 | ## 14 | # pullSecrets: 15 | # - regcred 16 | 17 | mme: 18 | tac: '0001' 19 | mcc: '001' 20 | mnc: '01' 21 | apn: srsapn 22 | 23 | users: 24 | - name: ue1 25 | imsi: '901700000039226' 26 | key: '491BB1C6E1179AED538028AE7AD525B3' 27 | opc: '3B7FB099B3A6D16873B33F023B1679E9' 28 | -------------------------------------------------------------------------------- /charts/srs-ue/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | appVersion: "23.11" 3 | description: > 4 | SRS ue 5 | home: https://github.com/Gradiant/charts 6 | sources: 7 | - https://github.com/srsran/srsRAN_4G 8 | icon: https://docs.srsran.com/en/latest/_static/logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: srs-ue 13 | version: 0.2.0 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - lte 19 | - ue 20 | -------------------------------------------------------------------------------- /charts/srs-ue/README.md: -------------------------------------------------------------------------------- 1 | # srs-ue 2 | 3 | ![Version: 0.1.0](https://img.shields.io/badge/Version-0.1.0-informational?style=flat-square) ![AppVersion: 20.04.1](https://img.shields.io/badge/AppVersion-20.04.1-informational?style=flat-square) 4 | 5 | SRS enodeb 6 | 7 | **Homepage:** 8 | 9 | ## Maintainers 10 | 11 | | Name | Email | Url | 12 | | ---- | ------ | --- | 13 | | cgiraldo | cgiraldo@gradiant.org | | 14 | 15 | ## Source Code 16 | 17 | * 18 | 19 | ## Values 20 | 21 | | Key | Type | Default | Description | 22 | |-----|------|---------|-------------| 23 | | device.args | string | `"auto"` | | 24 | | device.name | string | `"auto"` | | 25 | | image.pullPolicy | string | `"IfNotPresent"` | | 26 | | image.registry | string | `"docker.io"` | | 27 | | image.repository | string | `"gradiant/srs-lte"` | | 28 | | image.tag | string | `"20_04_1"` | | 29 | | resources.limits."ettus.com/usrp" | int | `1` | | 30 | | ue.imei | string | `"353490069873319"` | | 31 | | ue.imsi | string | `"001010000000001"` | | 32 | | ue.k | string | `"465B5CE8B199B49FAA5F0A2EE238A6BC"` | | 33 | | ue.opc | string | `"E8ED289DEBA952E4283B54E88E6183CA"` | | 34 | 35 | ---------------------------------------------- 36 | Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0) 37 | -------------------------------------------------------------------------------- /charts/srs-ue/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: ee0b9bfc-40cb-4cf5-94d1-c3599c64b309 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/srs-ue/templates/NOTES.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gradiant/5g-charts/5ca31a2e8d48fe7c74eaef0f6a528f8913a43be7/charts/srs-ue/templates/NOTES.txt -------------------------------------------------------------------------------- /charts/srs-ue/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "srsue.fullname" . }} 5 | labels: 6 | {{ include "srsue.labels.standard" . | nindent 4 }} 7 | data: 8 | ue.conf: | 9 | {{ tpl (.Files.Get "resources/ue.conf") . | indent 4 }} -------------------------------------------------------------------------------- /charts/srs-ue/templates/registry-secret.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.imageCredentials }} 2 | {{- if .Values.imageCredentials.registry }} 3 | apiVersion: v1 4 | kind: Secret 5 | 6 | metadata: 7 | name: {{ include "srsue.fullname" . }}-registry 8 | labels: 9 | {{ include "srsue.labels.standard" . | indent 4 }} 10 | type: kubernetes.io/dockerconfigjson 11 | data: 12 | .dockerconfigjson: {{ template "srsue.dockerconfig" . }} 13 | {{- end }} 14 | {{- end }} -------------------------------------------------------------------------------- /charts/srs-ue/templates/statefulset.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: apps/v1 2 | kind: StatefulSet 3 | metadata: 4 | name: {{ include "srsue.fullname" . }} 5 | labels: 6 | {{ include "srsue.labels.standard" . | nindent 4 }} 7 | spec: 8 | replicas: 1 9 | serviceName: {{ include "srsue.fullname" . }} 10 | selector: 11 | matchLabels: 12 | app.kubernetes.io/name: {{ include "srsue.name" . }} 13 | app.kubernetes.io/instance: {{ .Release.Name | quote }} 14 | template: 15 | metadata: 16 | labels: 17 | app.kubernetes.io/name: {{ include "srsue.name" . }} 18 | app.kubernetes.io/instance: {{ .Release.Name | quote }} 19 | spec: 20 | {{ include "srsue.imagePullSecrets" . | indent 6 }} 21 | containers: 22 | - name: ue 23 | image: {{ template "srsue.image" . }} 24 | imagePullPolicy: {{ .Values.image.pullPolicy | quote }} 25 | args: 26 | - "ue" 27 | securityContext: 28 | privileged: true 29 | resources: 30 | {{ toYaml .Values.resources | indent 10 }} 31 | volumeMounts: 32 | - name: srsue-config 33 | mountPath: /etc/srsran/ue.conf 34 | subPath: "ue.conf" 35 | volumes: 36 | - name: srsue-config 37 | configMap: 38 | name: {{ include "srsue.fullname" . }} -------------------------------------------------------------------------------- /charts/srs-ue/values.yaml: -------------------------------------------------------------------------------- 1 | image: 2 | registry: docker.io 3 | repository: gradiant/srsran-4g 4 | tag: "23_11" 5 | ## Specify a imagePullPolicy 6 | ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' 7 | ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images 8 | ## 9 | pullPolicy: IfNotPresent 10 | ## Optionally specify an array of imagePullSecrets. 11 | ## Secrets must be manually created in the namespace. 12 | ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ 13 | ## 14 | # pullSecrets: 15 | # - regcred 16 | 17 | device: 18 | name: auto 19 | # For best performance in 2x2 MIMO and >= 15 MHz use the following device_args settings: 20 | # USRP B210: num_recv_frames=64,num_send_frames=64 21 | # And for 75 PRBs, also append ",master_clock_rate=15.36e6" to the device args 22 | # For best performance when BW<5 MHz (25 PRB), use the following device_args settings: 23 | # USRP B210: send_frame_size=512,recv_frame_size=512 24 | args: auto 25 | 26 | ue: 27 | opc: 'E8ED289DEBA952E4283B54E88E6183CA' 28 | k: '465B5CE8B199B49FAA5F0A2EE238A6BC' 29 | imsi: '001010000000001' 30 | imei: '353490069873319' 31 | 32 | resources: 33 | limits: 34 | ettus.com/usrp: 1 35 | -------------------------------------------------------------------------------- /charts/srsran-4g-zmq/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | appVersion: "23.11" 3 | appVersion: "23.11" 4 | description: > 5 | srsRAN4g enodeb + ue. 6 | srsRAN4g enodeb + ue. 7 | home: https://github.com/Gradiant/charts 8 | sources: 9 | - https://github.com/srsran/srsRAN_4G 10 | - https://github.com/srsran/srsRAN_4G 11 | icon: https://docs.srsran.com/en/latest/_static/logo.png 12 | maintainers: 13 | - email: cgiraldo@gradiant.org 14 | name: cgiraldo 15 | name: srsran-4g-zmq 16 | version: 0.2.0 17 | annotations: 18 | artifacthub.io/category: networking 19 | keywords: 20 | - network 21 | - lte 22 | - enodeb 23 | -------------------------------------------------------------------------------- /charts/srsran-4g-zmq/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: 6bdf306a-6b7e-410d-9a0c-c0f5053aa30d 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/srsran-4g-zmq/templates/NOTES.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gradiant/5g-charts/5ca31a2e8d48fe7c74eaef0f6a528f8913a43be7/charts/srsran-4g-zmq/templates/NOTES.txt -------------------------------------------------------------------------------- /charts/srsran-4g-zmq/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "srslte.fullname" . }} 5 | labels: 6 | {{ include "srslte.labels.standard" . | nindent 4 }} 7 | data: 8 | enb.conf: | 9 | {{ tpl (.Files.Get "resources/enb.conf") . | indent 4 }} 10 | ue.conf: | 11 | {{ tpl (.Files.Get "resources/ue.conf") . | indent 4 }} 12 | rr.conf: | 13 | {{ tpl (.Files.Get "resources/rr.conf") . | indent 4 }} -------------------------------------------------------------------------------- /charts/srsran-4g-zmq/templates/registry-secret.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.imageCredentials }} 2 | {{- if .Values.imageCredentials.registry }} 3 | apiVersion: v1 4 | kind: Secret 5 | 6 | metadata: 7 | name: {{ include "srslte.fullname" . }}-registry 8 | labels: 9 | {{ include "srslte.labels.standard" . | indent 4 }} 10 | type: kubernetes.io/dockerconfigjson 11 | data: 12 | .dockerconfigjson: {{ template "srslte.dockerconfig" . }} 13 | {{- end }} 14 | {{- end }} -------------------------------------------------------------------------------- /charts/srsran-4g-zmq/values.yaml: -------------------------------------------------------------------------------- 1 | image: 2 | registry: docker.io 3 | repository: gradiant/srsran-4g 4 | tag: "23_11" 5 | ## Specify a imagePullPolicy 6 | ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' 7 | ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images 8 | ## 9 | pullPolicy: IfNotPresent 10 | ## Optionally specify an array of imagePullSecrets. 11 | ## Secrets must be manually created in the namespace. 12 | ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ 13 | ## 14 | # pullSecrets: 15 | # - regcred 16 | 17 | ue: 18 | opc: 'E8ED289DEBA952E4283B54E88E6183CA' 19 | k: '465B5CE8B199B49FAA5F0A2EE238A6BC' 20 | imsi: '999700000000001' 21 | imei: '353490069873319' 22 | resources: {} 23 | 24 | enb: 25 | mme: open5gs-mme-s1ap 26 | mcc: '999' 27 | mnc: '70' 28 | tac: '0001' 29 | resources: {} 30 | -------------------------------------------------------------------------------- /charts/srsran-4g/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | appVersion: "23.11" 3 | description: > 4 | srsRAN enodeb 5 | home: https://github.com/Gradiant/charts 6 | sources: 7 | - https://github.com/srsran/srsRAN_4G 8 | icon: https://docs.srsran.com/en/latest/_static/logo.png 9 | maintainers: 10 | - email: cgiraldo@gradiant.org 11 | name: cgiraldo 12 | name: srsran-4g-enb 13 | version: 0.2.0 14 | annotations: 15 | artifacthub.io/category: networking 16 | keywords: 17 | - network 18 | - lte 19 | - enodeb 20 | -------------------------------------------------------------------------------- /charts/srsran-4g/README.md: -------------------------------------------------------------------------------- 1 | # srs-enb 2 | 3 | ![Version: 0.1.2](https://img.shields.io/badge/Version-0.1.2-informational?style=flat-square) ![AppVersion: 22.04.1](https://img.shields.io/badge/AppVersion-22.04.1-informational?style=flat-square) 4 | 5 | SRS enodeb 6 | 7 | **Homepage:** 8 | 9 | ## Maintainers 10 | 11 | | Name | Email | Url | 12 | | ---- | ------ | --- | 13 | | cgiraldo | | | 14 | 15 | ## Source Code 16 | 17 | * 18 | 19 | ## Values 20 | 21 | | Key | Type | Default | Description | 22 | |-----|------|---------|-------------| 23 | | device.args | string | `"auto"` | | 24 | | device.name | string | `"auto"` | | 25 | | enb.mcc | string | `"001"` | | 26 | | enb.mme | string | `"mme"` | | 27 | | enb.mnc | string | `"01"` | | 28 | | enb.tac | string | `"0001"` | | 29 | | image.pullPolicy | string | `"IfNotPresent"` | | 30 | | image.registry | string | `"docker.io"` | | 31 | | image.repository | string | `"gradiant/srsran"` | | 32 | | image.tag | string | `"22_04_1"` | | 33 | | resources.limits."ettus.com/usrp" | int | `1` | | 34 | 35 | ---------------------------------------------- 36 | Autogenerated from chart metadata using [helm-docs v1.11.0](https://github.com/norwoodj/helm-docs/releases/v1.11.0) 37 | -------------------------------------------------------------------------------- /charts/srsran-4g/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: 77431472-9275-4a1d-80b4-e755611c0cd3 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/srsran-4g/templates/NOTES.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gradiant/5g-charts/5ca31a2e8d48fe7c74eaef0f6a528f8913a43be7/charts/srsran-4g/templates/NOTES.txt -------------------------------------------------------------------------------- /charts/srsran-4g/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "srsenb.fullname" . }} 5 | labels: 6 | {{ include "srsenb.labels.standard" . | nindent 4 }} 7 | data: 8 | enb.conf: | 9 | {{ tpl (.Files.Get "resources/enb.conf") . | indent 4 }} 10 | rr.conf: | 11 | {{ tpl (.Files.Get "resources/rr.conf") . | indent 4 }} -------------------------------------------------------------------------------- /charts/srsran-4g/templates/registry-secret.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.imageCredentials }} 2 | {{- if .Values.imageCredentials.registry }} 3 | apiVersion: v1 4 | kind: Secret 5 | 6 | metadata: 7 | name: {{ include "srsenb.fullname" . }}-registry 8 | labels: 9 | {{ include "srsenb.labels.standard" . | indent 4 }} 10 | type: kubernetes.io/dockerconfigjson 11 | data: 12 | .dockerconfigjson: {{ template "srsenb.dockerconfig" . }} 13 | {{- end }} 14 | {{- end }} -------------------------------------------------------------------------------- /charts/srsran-4g/values.yaml: -------------------------------------------------------------------------------- 1 | image: 2 | registry: docker.io 3 | repository: gradiant/srsran-4g 4 | tag: "23_11" 5 | ## Specify a imagePullPolicy 6 | ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' 7 | ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images 8 | ## 9 | pullPolicy: IfNotPresent 10 | ## Optionally specify an array of imagePullSecrets. 11 | ## Secrets must be manually created in the namespace. 12 | ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ 13 | ## 14 | # pullSecrets: 15 | # - regcred 16 | 17 | device: 18 | name: auto 19 | # For best performance in 2x2 MIMO and >= 15 MHz use the following device_args settings: 20 | # USRP B210: num_recv_frames=64,num_send_frames=64 21 | # And for 75 PRBs, also append ",master_clock_rate=15.36e6" to the device args 22 | # For best performance when BW<5 MHz (25 PRB), use the following device_args settings: 23 | # USRP B210: send_frame_size=512,recv_frame_size=512 24 | args: auto 25 | 26 | enb: 27 | mcc: '999' 28 | mnc: '70' 29 | tac: '0001' 30 | mme: open5gs-mme-s1ap 31 | resources: 32 | limits: 33 | ettus.com/usrp: 1 34 | -------------------------------------------------------------------------------- /charts/srsran-5g-zmq/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "23.10.1" 3 | description: > 4 | Helm chart to deploy srsRAN 5G gNB on Kubernetes. 5 | sources: 6 | - https://github.com/gradiant/5g-charts 7 | - https://github.com/srsran/srsRAN_Project 8 | maintainers: 9 | - email: avrodriguez@gradiant.org 10 | name: avrodriguez 11 | name: srsran-5g-zmq 12 | version: 1.0.1 13 | dependencies: 14 | - name: common 15 | repository: https://charts.bitnami.com/bitnami 16 | tags: 17 | - bitnami-common 18 | version: 1.x.x 19 | -------------------------------------------------------------------------------- /charts/srsran-5g-zmq/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: 60714c0a-fe0a-492b-bfc8-021510341f03 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/srsran-5g-zmq/resources/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -ex 4 | 5 | if [ $# -lt 1 ] 6 | then 7 | echo "Usage : $0 [gnb]" 8 | exit 9 | fi 10 | 11 | if [[ ! -z "$AMF_HOSTNAME" ]] ; then 12 | export AMF_ADDR="$(host -4 $AMF_HOSTNAME |awk '/has.*address/{print $NF; exit}')" 13 | fi 14 | 15 | if [[ -z "${AMF_BIND_ADDR}" ]] ; then 16 | export AMF_BIND_ADDR=$(ip addr show $AMF_BIND_INTERFACE | grep -Po 'inet \K[\d.]+') 17 | fi 18 | 19 | envsubst < /gnb-template.yml > gnb.yml 20 | 21 | /opt/srsRAN_Project/target/bin/gnb -c gnb.yml -------------------------------------------------------------------------------- /charts/srsran-5g-zmq/templates/configmap-entrypoint.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }}-entrypoint 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | entrypoint.sh: | 8 | {{ tpl (.Files.Get "resources/entrypoint.sh") . | indent 4 }} -------------------------------------------------------------------------------- /charts/srsran-5g-zmq/templates/configmap-ue.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }}-ue 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | ue.conf: | 8 | {{ tpl (.Files.Get "resources/ue.conf") . | indent 4 }} -------------------------------------------------------------------------------- /charts/srsran-5g-zmq/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | gnb-template.yml: | 8 | {{ tpl (.Files.Get "resources/gnb-template.yml") . | indent 4 }} -------------------------------------------------------------------------------- /charts/srsran-5g-zmq/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/srsran-5g/Chart.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v2 2 | appVersion: "23.10.1" 3 | description: > 4 | Helm chart to deploy srsRAN 5G gNB on Kubernetes. 5 | sources: 6 | - https://github.com/gradiant/5g-charts 7 | - https://github.com/srsran/srsRAN_Project 8 | maintainers: 9 | - email: avrodriguez@gradiant.org 10 | name: avrodriguez 11 | name: srsran-5g 12 | version: 1.0.0 13 | dependencies: 14 | - name: common 15 | repository: https://charts.bitnami.com/bitnami 16 | tags: 17 | - bitnami-common 18 | version: 1.x.x 19 | -------------------------------------------------------------------------------- /charts/srsran-5g/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: 329519ca-51f0-432f-9daa-52fe9e4e5384 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/srsran-5g/resources/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -ex 4 | 5 | if [ $# -lt 1 ] 6 | then 7 | echo "Usage : $0 [gnb]" 8 | exit 9 | fi 10 | 11 | if [[ ! -z "$AMF_HOSTNAME" ]] ; then 12 | export AMF_ADDR="$(host -4 $AMF_HOSTNAME |awk '/has.*address/{print $NF; exit}')" 13 | fi 14 | 15 | if [[ -z "${AMF_BIND_ADDR}" ]] ; then 16 | export AMF_BIND_ADDR=$(ip addr show $AMF_BIND_INTERFACE | grep -Po 'inet \K[\d.]+') 17 | fi 18 | 19 | if [[ ! -z "$GNB_HOSTNAME" ]] ; then 20 | export GNB_ADDRESS="$(host -4 $GNB_HOSTNAME | awk '/has.*address/{print $NF; exit}')" 21 | else 22 | export GNB_ADDRESS="$(host -4 localhost | awk '/has.*address/{print $NF; exit}')" 23 | fi 24 | 25 | 26 | if [[ ! -z "$UE_HOSTNAME" ]] ; then 27 | export UE_ADDRESS="$(host -4 $UE_HOSTNAME |awk '/has.*address/{print $NF; exit}')" 28 | fi 29 | 30 | 31 | 32 | envsubst < /gnb-template.yml > gnb.yml 33 | 34 | /opt/srsRAN_Project/target/bin/gnb -c gnb.yml -------------------------------------------------------------------------------- /charts/srsran-5g/templates/configmap-entrypoint.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }}-entrypoint 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | entrypoint.sh: | 8 | {{ tpl (.Files.Get "resources/entrypoint.sh") . | indent 4 }} -------------------------------------------------------------------------------- /charts/srsran-5g/templates/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | data: 7 | gnb-template.yml: | 8 | {{ tpl (.Files.Get "resources/gnb-template.yml") . | indent 4 }} -------------------------------------------------------------------------------- /charts/srsran-5g/templates/hpa.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: autoscaling/v1 2 | kind: HorizontalPodAutoscaler 3 | metadata: 4 | name: {{ template "common.names.fullname" . }} 5 | spec: 6 | maxReplicas: 1 7 | scaleTargetRef: 8 | apiVersion: apps/v1 9 | kind: Deployment 10 | name: {{ template "common.names.fullname" . }} -------------------------------------------------------------------------------- /charts/ueransim-gnb/Chart.yaml: -------------------------------------------------------------------------------- 1 | annotations: 2 | category: apps 3 | artifacthub.io/category: networking 4 | apiVersion: v2 5 | appVersion: 3.2.6 6 | dependencies: 7 | - name: common 8 | repository: https://charts.bitnami.com/bitnami 9 | tags: 10 | - bitnami-common 11 | version: 1.x.x 12 | description: ueransim gNodeB for 5G RAN simulation 13 | engine: gotpl 14 | home: https://github.com/aligungr/UERANSIM 15 | icon: https://github.com/aligungr/UERANSIM/raw/master/.github/logo.png 16 | keywords: 17 | - network 18 | - apps 19 | - k8s 20 | - gradiant 21 | maintainers: 22 | - email: cgiraldo@gradiant.org 23 | name: cgiraldo 24 | - email: avrodriguez@gradiant.org 25 | name: avrodriguez 26 | name: ueransim-gnb 27 | sources: 28 | - https://github.com/aligungr/UERANSIM 29 | version: 0.2.6 30 | -------------------------------------------------------------------------------- /charts/ueransim-gnb/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: 217c92c6-d336-4649-ac34-9bc046e2d3fc 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/ueransim-gnb/resources/gnb.yaml: -------------------------------------------------------------------------------- 1 | mcc: {{ .Values.mcc }} # Mobile Country Code value 2 | mnc: {{ .Values.mnc }} # Mobile Network Code value (2 or 3 digits) 3 | 4 | nci: '0x0000000100' # NR Cell Identity (36-bit) 5 | idLength: 32 # NR gNB ID length in bits [22...32] 6 | tac: {{ .Values.tac }} # Tracking Area Code 7 | 8 | linkIp: ${RADIO_BIND_IP} # gNB's local IP address for Radio Link Simulation (Usually same with local IP) 9 | ngapIp: ${N2_BIND_IP} # gNB's local IP address for N2 Interface (Usually same with local IP) 10 | gtpIp: ${N3_BIND_IP} # gNB's local IP address for N3 Interface (Usually same with local IP) 11 | 12 | # List of AMF address information 13 | amfConfigs: 14 | - address: ${AMF_IP} 15 | port: 38412 16 | 17 | # List of supported S-NSSAIs by this gNB 18 | slices: 19 | - sst: {{ .Values.sst }} 20 | sd: {{ .Values.sd }} 21 | 22 | # Indicates whether or not SCTP stream number errors should be ignored. 23 | ignoreStreamIds: true -------------------------------------------------------------------------------- /charts/ueransim-gnb/templates/NOTES.txt: -------------------------------------------------------------------------------- 1 | 2 | ueransim-gnb successfully installed! 3 | Check gnodeb log with: 4 | 5 | ``` 6 | kubectl -n {{ .Release.Namespace }} logs deployment/{{ include "common.names.fullname" . }} 7 | ``` 8 | 9 | --- 10 | 11 | {{- if .Values.ues.enabled }} 12 | 13 | You have also deployed {{ .Values.ues.count }} ues. You can enter ues terminal with: 14 | 15 | ``` 16 | kubectl -n {{ .Release.Namespace }} exec -ti deployment/{{ include "common.names.fullname" . }}-ues -- /bin/bash 17 | ``` 18 | There is a tun interface for each ue. 19 | You can bind your application to the interface to test ue connectivity. 20 | Example: 21 | 22 | ``` 23 | ping -I uesimtun0 gradiant.org 24 | traceroute -i uesimtun0 gradiant.org 25 | curl --interface uesimtun0 https://www.gradiant.org/ 26 | ``` 27 | 28 | You can also deploy more ues connected to this gnodeb with gradiant/ueransim-ues chart: 29 | 30 | ``` 31 | helm install -n {{ .Release.Namespace }} ueransim-ues gradiant/ueransim-ues --set gnb.hostname={{ include "common.names.fullname" . }} 32 | ``` 33 | 34 | {{- else }} 35 | 36 | No embedded ues where deployed. 37 | 38 | You can deploy ues connected to this gnodeb with gradiant/ueransim-ues chart: 39 | 40 | ``` 41 | helm install -n {{ .Release.Namespace }} ueransim-ues gradiant/ueransim-ues --set gnb.hostname={{ include "common.names.fullname" . }} 42 | ``` 43 | 44 | {{- end }} 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /charts/ueransim-gnb/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | 2 | {{/* 3 | Return the proper ueransim image name 4 | */}} 5 | {{- define "ueransim.image" -}} 6 | {{ include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) }} 7 | {{- end -}} 8 | 9 | {{/* 10 | Return the proper Docker Image Registry Secret Names 11 | */}} 12 | {{- define "ueransim.imagePullSecrets" -}} 13 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image) "global" .Values.global) -}} 14 | {{- end -}} -------------------------------------------------------------------------------- /charts/ueransim-gnb/templates/gnb-configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | namespace: {{ .Release.Namespace | quote }} 6 | labels: {{- include "common.labels.standard" . | nindent 4 }} 7 | app.kubernetes.io/component: gnb 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | {{- if .Values.commonAnnotations }} 12 | annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 13 | {{- end }} 14 | data: 15 | gnb.yaml: | 16 | {{ tpl (.Files.Get "resources/gnb.yaml") . | indent 4 }} 17 | -------------------------------------------------------------------------------- /charts/ueransim-gnb/templates/gnb-hpa.yaml: -------------------------------------------------------------------------------- 1 | #Autoscaler to limit gnb to 1. 2 | apiVersion: autoscaling/v1 3 | kind: HorizontalPodAutoscaler 4 | metadata: 5 | name: {{ template "common.names.fullname" . }} 6 | spec: 7 | maxReplicas: 1 8 | scaleTargetRef: 9 | apiVersion: apps/v1 10 | kind: StatefulSet 11 | name: {{ template "common.names.fullname" . }} 12 | 13 | -------------------------------------------------------------------------------- /charts/ueransim-gnb/templates/gnb-svc.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Service 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | labels: {{- include "common.labels.standard" . | nindent 4 }} 6 | app.kubernetes.io/component: gnb 7 | spec: 8 | ports: 9 | - name: gnb-ue 10 | port: 4997 11 | protocol: UDP 12 | - name: gnb-upf 13 | port: 2152 14 | protocol: UDP 15 | clusterIP: None 16 | publishNotReadyAddresses: true 17 | selector: {{- include "common.labels.matchLabels" . | nindent 4 }} 18 | app.kubernetes.io/component: gnb 19 | -------------------------------------------------------------------------------- /charts/ueransim-gnb/templates/ue-configmap.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.ues.enabled -}} 2 | apiVersion: v1 3 | kind: ConfigMap 4 | metadata: 5 | name: {{ include "common.names.fullname" . }}-ues 6 | namespace: {{ .Release.Namespace | quote }} 7 | labels: {{- include "common.labels.standard" . | nindent 4 }} 8 | app.kubernetes.io/component: ues 9 | {{- if .Values.commonLabels }} 10 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 11 | {{- end }} 12 | {{- if .Values.commonAnnotations }} 13 | annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 14 | {{- end }} 15 | data: 16 | ue.yaml: | 17 | {{ tpl (.Files.Get "resources/ue.yaml") . | indent 4 }} 18 | {{- end }} -------------------------------------------------------------------------------- /charts/ueransim-ues/Chart.yaml: -------------------------------------------------------------------------------- 1 | annotations: 2 | category: apps 3 | artifacthub.io/category: networking 4 | apiVersion: v2 5 | appVersion: 3.2.6 6 | dependencies: 7 | - name: common 8 | repository: https://charts.bitnami.com/bitnami 9 | tags: 10 | - bitnami-common 11 | version: 1.x.x 12 | description: ueransim UEs for 5G RAN simulation 13 | engine: gotpl 14 | home: https://github.com/aligungr/UERANSIM 15 | icon: https://github.com/aligungr/UERANSIM/raw/master/.github/logo.png 16 | keywords: 17 | - network 18 | - apps 19 | - k8s 20 | - gradiant 21 | maintainers: 22 | - email: cgiraldo@gradiant.org 23 | name: cgiraldo 24 | - email: avrodriguez@gradiant.org 25 | name: avrodriguez 26 | name: ueransim-ues 27 | sources: 28 | - https://github.com/aligungr/UERANSIM 29 | version: 0.1.2 30 | -------------------------------------------------------------------------------- /charts/ueransim-ues/artifacthub-repo.yml: -------------------------------------------------------------------------------- 1 | repositoryID: a26a02e9-daec-4df6-b388-19409af85411 2 | owners: 3 | - name: cgiraldo 4 | email: cgiraldo@gradiant.org 5 | - name: avrodriguez 6 | email: avrodriguez@gradiant.org 7 | -------------------------------------------------------------------------------- /charts/ueransim-ues/templates/NOTES.txt: -------------------------------------------------------------------------------- 1 | 2 | ueransim-ues successfully installed! 3 | Check ues log with: 4 | 5 | ``` 6 | kubectl -n {{ .Release.Namespace }} logs deployment/{{ include "common.names.fullname" . }} 7 | ``` 8 | 9 | You can enter ues terminal with: 10 | 11 | ``` 12 | kubectl -n {{ .Release.Namespace }} exec -ti deployment/{{ include "common.names.fullname" . }}-ues -- /bin/bash 13 | ``` 14 | There is a tun interface for each ue. 15 | You can bind your application to the interface to test ue connectivity. 16 | Example: 17 | 18 | ``` 19 | ping -I uesimtun0 gradiant.org 20 | traceroute -i uesimtun0 gradiant.org 21 | curl --interface uesimtun0 https://www.gradiant.org/ 22 | ``` 23 | -------------------------------------------------------------------------------- /charts/ueransim-ues/templates/_helpers.tpl: -------------------------------------------------------------------------------- 1 | 2 | {{/* 3 | Return the proper ueransim image name 4 | */}} 5 | {{- define "ueransim.image" -}} 6 | {{ include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) }} 7 | {{- end -}} 8 | 9 | {{/* 10 | Return the proper Docker Image Registry Secret Names 11 | */}} 12 | {{- define "ueransim.imagePullSecrets" -}} 13 | {{- include "common.images.pullSecrets" (dict "images" (list .Values.image) "global" .Values.global) -}} 14 | {{- end -}} -------------------------------------------------------------------------------- /charts/ueransim-ues/templates/ue-configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: {{ include "common.names.fullname" . }} 5 | namespace: {{ .Release.Namespace | quote }} 6 | labels: {{- include "common.labels.standard" . | nindent 4 }} 7 | app.kubernetes.io/component: ues 8 | {{- if .Values.commonLabels }} 9 | {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} 10 | {{- end }} 11 | {{- if .Values.commonAnnotations }} 12 | annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} 13 | {{- end }} 14 | data: 15 | ue.yaml: | 16 | {{ tpl (.Files.Get "resources/ue.yaml") . | indent 4 }} -------------------------------------------------------------------------------- /micinncdti_2021.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gradiant/5g-charts/5ca31a2e8d48fe7c74eaef0f6a528f8913a43be7/micinncdti_2021.jpg -------------------------------------------------------------------------------- /scripts/ct-config.yaml: -------------------------------------------------------------------------------- 1 | chart-repos: 2 | - bitnami=https://charts.bitnami.com/bitnami 3 | - openverso=https://gradiant.github.io/openverso-charts 4 | helm-extra-args: "--timeout 300s" 5 | validate-maintainers: false -------------------------------------------------------------------------------- /scripts/doc-gen.sh: -------------------------------------------------------------------------------- 1 | docker run --rm --volume "$(pwd):/helm-docs" -u $(id -u) jnorwood/helm-docs:latest -------------------------------------------------------------------------------- /scripts/install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo "Deploying kind cluster" 4 | kind create cluster --name charttest --wait 1m 5 | echo "Deploying metallb loadBalancer" 6 | kind_IP=$(docker network inspect -f '{{index (index .IPAM.Config 0) "Gateway" }}' kind) 7 | kubectl --kubeconfig=$kind_kubeconfig apply -f https://raw.githubusercontent.com/metallb/metallb/v0.9.6/manifests/namespace.yaml 8 | kubectl --kubeconfig=$kind_kubeconfig apply -f https://raw.githubusercontent.com/metallb/metallb/v0.9.6/manifests/metallb.yaml 9 | cat <