diff --git a/.gitignore b/.gitignore
index 41c8995..324efa7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,7 +1,7 @@
 # Copyright 2020-present Open Networking Foundation
 #
 # SPDX-License-Identifier: Apache-2.0
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 # lockfiles for requirements.yaml for dependent charts
 requirements.lock
diff --git a/.gitreview b/.gitreview
index a48bcc6..821f682 100644
--- a/.gitreview
+++ b/.gitreview
@@ -1,6 +1,6 @@
 # SPDX-FileCopyrightText: 2020 Open Networking Foundation <info@opennetworking.org>
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 [gerrit]
 host=gerrit.opencord.org
diff --git a/5g-control-plane/.gitignore b/5g-control-plane/.gitignore
index ed7d37a..4d7ac14 100644
--- a/5g-control-plane/.gitignore
+++ b/5g-control-plane/.gitignore
@@ -1,6 +1,6 @@
 # SPDX-FileCopyrightText: 2020-present Open Networking Foundation <info@opennetworking.org>
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 charts/
 requirements.lock
diff --git a/5g-control-plane/Chart.yaml b/5g-control-plane/Chart.yaml
index 7cabc3b..353e963 100644
--- a/5g-control-plane/Chart.yaml
+++ b/5g-control-plane/Chart.yaml
@@ -1,14 +1,14 @@
 ---
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 apiVersion: v2
 description: SD-Core 5G control plane services
 name: 5g-control-plane
 icon: https://guide.opencord.org/logos/cord.svg
 
-version: 0.6.5
+version: 0.6.6
 
 dependencies:
   - name: mongodb
diff --git a/5g-control-plane/templates/NOTES.txt b/5g-control-plane/templates/NOTES.txt
index fb2a925..fc89c71 100644
--- a/5g-control-plane/templates/NOTES.txt
+++ b/5g-control-plane/templates/NOTES.txt
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 */ -}}
 
diff --git a/5g-control-plane/templates/_helpers.tpl b/5g-control-plane/templates/_helpers.tpl
index 87f1ec6..bc875e5 100644
--- a/5g-control-plane/templates/_helpers.tpl
+++ b/5g-control-plane/templates/_helpers.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 */ -}}
 
diff --git a/5g-control-plane/templates/bin/_amf-run.sh.tpl b/5g-control-plane/templates/bin/_amf-run.sh.tpl
index ce0d310..45a6712 100644
--- a/5g-control-plane/templates/bin/_amf-run.sh.tpl
+++ b/5g-control-plane/templates/bin/_amf-run.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -xe
 
diff --git a/5g-control-plane/templates/bin/_ausf-run.sh.tpl b/5g-control-plane/templates/bin/_ausf-run.sh.tpl
index 0307aed..0813432 100644
--- a/5g-control-plane/templates/bin/_ausf-run.sh.tpl
+++ b/5g-control-plane/templates/bin/_ausf-run.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -xe
 
diff --git a/5g-control-plane/templates/bin/_nrf-run.sh.tpl b/5g-control-plane/templates/bin/_nrf-run.sh.tpl
index 7caa2e9..52b8bcf 100644
--- a/5g-control-plane/templates/bin/_nrf-run.sh.tpl
+++ b/5g-control-plane/templates/bin/_nrf-run.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -xe
 
diff --git a/5g-control-plane/templates/bin/_nssf-run.sh.tpl b/5g-control-plane/templates/bin/_nssf-run.sh.tpl
index 2aae4a0..6870eae 100644
--- a/5g-control-plane/templates/bin/_nssf-run.sh.tpl
+++ b/5g-control-plane/templates/bin/_nssf-run.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -xe
 
diff --git a/5g-control-plane/templates/bin/_pcf-run.sh.tpl b/5g-control-plane/templates/bin/_pcf-run.sh.tpl
index 9dfee3f..07ed19d 100644
--- a/5g-control-plane/templates/bin/_pcf-run.sh.tpl
+++ b/5g-control-plane/templates/bin/_pcf-run.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -xe
 
diff --git a/5g-control-plane/templates/bin/_smf-run.sh.tpl b/5g-control-plane/templates/bin/_smf-run.sh.tpl
index aafc97c..63a123b 100644
--- a/5g-control-plane/templates/bin/_smf-run.sh.tpl
+++ b/5g-control-plane/templates/bin/_smf-run.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -xe
 
diff --git a/5g-control-plane/templates/bin/_udm-run.sh.tpl b/5g-control-plane/templates/bin/_udm-run.sh.tpl
index a171cea..35a7e5b 100644
--- a/5g-control-plane/templates/bin/_udm-run.sh.tpl
+++ b/5g-control-plane/templates/bin/_udm-run.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -xe
 
diff --git a/5g-control-plane/templates/bin/_udr-run.sh.tpl b/5g-control-plane/templates/bin/_udr-run.sh.tpl
index 900f72a..11656d8 100644
--- a/5g-control-plane/templates/bin/_udr-run.sh.tpl
+++ b/5g-control-plane/templates/bin/_udr-run.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -xe
 
diff --git a/5g-control-plane/templates/bin/_webui-run.sh.tpl b/5g-control-plane/templates/bin/_webui-run.sh.tpl
index 5e91d50..48081d9 100644
--- a/5g-control-plane/templates/bin/_webui-run.sh.tpl
+++ b/5g-control-plane/templates/bin/_webui-run.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -xe
 
diff --git a/5g-control-plane/templates/configmap-amf.yaml b/5g-control-plane/templates/configmap-amf.yaml
index 5747fed..f35bb56 100644
--- a/5g-control-plane/templates/configmap-amf.yaml
+++ b/5g-control-plane/templates/configmap-amf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.amf.deploy }}
diff --git a/5g-control-plane/templates/configmap-ausf.yaml b/5g-control-plane/templates/configmap-ausf.yaml
index 2a8a2b1..7b8a54d 100644
--- a/5g-control-plane/templates/configmap-ausf.yaml
+++ b/5g-control-plane/templates/configmap-ausf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.ausf.deploy }}
diff --git a/5g-control-plane/templates/configmap-nrf.yaml b/5g-control-plane/templates/configmap-nrf.yaml
index ccb236b..8cf3fae 100644
--- a/5g-control-plane/templates/configmap-nrf.yaml
+++ b/5g-control-plane/templates/configmap-nrf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.nrf.deploy }}
diff --git a/5g-control-plane/templates/configmap-nssf.yaml b/5g-control-plane/templates/configmap-nssf.yaml
index f6a8808..8c4a877 100644
--- a/5g-control-plane/templates/configmap-nssf.yaml
+++ b/5g-control-plane/templates/configmap-nssf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.nssf.deploy }}
diff --git a/5g-control-plane/templates/configmap-pcf.yaml b/5g-control-plane/templates/configmap-pcf.yaml
index dcb9bfe..a1a8d5c 100644
--- a/5g-control-plane/templates/configmap-pcf.yaml
+++ b/5g-control-plane/templates/configmap-pcf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.pcf.deploy }}
diff --git a/5g-control-plane/templates/configmap-smf.yaml b/5g-control-plane/templates/configmap-smf.yaml
index 429499c..ba00a36 100644
--- a/5g-control-plane/templates/configmap-smf.yaml
+++ b/5g-control-plane/templates/configmap-smf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.smf.deploy }}
diff --git a/5g-control-plane/templates/configmap-udm.yaml b/5g-control-plane/templates/configmap-udm.yaml
index 79f98c6..71126b4 100644
--- a/5g-control-plane/templates/configmap-udm.yaml
+++ b/5g-control-plane/templates/configmap-udm.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.udm.deploy }}
diff --git a/5g-control-plane/templates/configmap-udr.yaml b/5g-control-plane/templates/configmap-udr.yaml
index 8bbac77..9c6aefc 100644
--- a/5g-control-plane/templates/configmap-udr.yaml
+++ b/5g-control-plane/templates/configmap-udr.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.udr.deploy }}
diff --git a/5g-control-plane/templates/configmap-webui.yaml b/5g-control-plane/templates/configmap-webui.yaml
index 07435ea..f542020 100644
--- a/5g-control-plane/templates/configmap-webui.yaml
+++ b/5g-control-plane/templates/configmap-webui.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.webui.deploy }}
diff --git a/5g-control-plane/templates/deployment-amf.yaml b/5g-control-plane/templates/deployment-amf.yaml
index a6e7cc5..a7f7a65 100644
--- a/5g-control-plane/templates/deployment-amf.yaml
+++ b/5g-control-plane/templates/deployment-amf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 {{- if .Values.config.amf.deploy }}
 {{ tuple "amf" . | include "5g-control-plane.service_account" }}
diff --git a/5g-control-plane/templates/deployment-ausf.yaml b/5g-control-plane/templates/deployment-ausf.yaml
index 295e198..5ffea55 100644
--- a/5g-control-plane/templates/deployment-ausf.yaml
+++ b/5g-control-plane/templates/deployment-ausf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.ausf.deploy }}
diff --git a/5g-control-plane/templates/deployment-nrf.yaml b/5g-control-plane/templates/deployment-nrf.yaml
index 80075f8..c325cff 100644
--- a/5g-control-plane/templates/deployment-nrf.yaml
+++ b/5g-control-plane/templates/deployment-nrf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.nrf.deploy }}
diff --git a/5g-control-plane/templates/deployment-nssf.yaml b/5g-control-plane/templates/deployment-nssf.yaml
index 2cce254..7dbdb9c 100644
--- a/5g-control-plane/templates/deployment-nssf.yaml
+++ b/5g-control-plane/templates/deployment-nssf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.nssf.deploy }}
diff --git a/5g-control-plane/templates/deployment-pcf.yaml b/5g-control-plane/templates/deployment-pcf.yaml
index 6829ffe..1139de3 100644
--- a/5g-control-plane/templates/deployment-pcf.yaml
+++ b/5g-control-plane/templates/deployment-pcf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.pcf.deploy }}
diff --git a/5g-control-plane/templates/deployment-smf.yaml b/5g-control-plane/templates/deployment-smf.yaml
index 296bc50..6de7ccc 100644
--- a/5g-control-plane/templates/deployment-smf.yaml
+++ b/5g-control-plane/templates/deployment-smf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.smf.deploy }}
diff --git a/5g-control-plane/templates/deployment-udm.yaml b/5g-control-plane/templates/deployment-udm.yaml
index 2714ef0..01492a8 100644
--- a/5g-control-plane/templates/deployment-udm.yaml
+++ b/5g-control-plane/templates/deployment-udm.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.udm.deploy }}
diff --git a/5g-control-plane/templates/deployment-udr.yaml b/5g-control-plane/templates/deployment-udr.yaml
index abe6e64..a4d4eb1 100644
--- a/5g-control-plane/templates/deployment-udr.yaml
+++ b/5g-control-plane/templates/deployment-udr.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.udr.deploy }}
diff --git a/5g-control-plane/templates/deployment-webui.yaml b/5g-control-plane/templates/deployment-webui.yaml
index c71becb..5aebec2 100644
--- a/5g-control-plane/templates/deployment-webui.yaml
+++ b/5g-control-plane/templates/deployment-webui.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.webui.deploy }}
diff --git a/5g-control-plane/templates/ingress-webui.yaml b/5g-control-plane/templates/ingress-webui.yaml
index b41c736..a5e1cfd 100644
--- a/5g-control-plane/templates/ingress-webui.yaml
+++ b/5g-control-plane/templates/ingress-webui.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.webui.ingress.enabled }}
diff --git a/5g-control-plane/templates/service-amf.yaml b/5g-control-plane/templates/service-amf.yaml
index d02f57f..1cac3be 100644
--- a/5g-control-plane/templates/service-amf.yaml
+++ b/5g-control-plane/templates/service-amf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.amf.deploy }}
diff --git a/5g-control-plane/templates/service-ausf.yaml b/5g-control-plane/templates/service-ausf.yaml
index a7c815d..a5e267a 100644
--- a/5g-control-plane/templates/service-ausf.yaml
+++ b/5g-control-plane/templates/service-ausf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.ausf.deploy }}
diff --git a/5g-control-plane/templates/service-nrf.yaml b/5g-control-plane/templates/service-nrf.yaml
index 07fcfe3..61314b6 100644
--- a/5g-control-plane/templates/service-nrf.yaml
+++ b/5g-control-plane/templates/service-nrf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.nrf.deploy }}
diff --git a/5g-control-plane/templates/service-nssf.yaml b/5g-control-plane/templates/service-nssf.yaml
index 4bcfcde..747bd22 100644
--- a/5g-control-plane/templates/service-nssf.yaml
+++ b/5g-control-plane/templates/service-nssf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.nssf.deploy }}
diff --git a/5g-control-plane/templates/service-pcf.yaml b/5g-control-plane/templates/service-pcf.yaml
index 1f9f7c4..035c647 100644
--- a/5g-control-plane/templates/service-pcf.yaml
+++ b/5g-control-plane/templates/service-pcf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.pcf.deploy }}
diff --git a/5g-control-plane/templates/service-smf.yaml b/5g-control-plane/templates/service-smf.yaml
index 6141455..cda2739 100644
--- a/5g-control-plane/templates/service-smf.yaml
+++ b/5g-control-plane/templates/service-smf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.smf.deploy }}
diff --git a/5g-control-plane/templates/service-udm.yaml b/5g-control-plane/templates/service-udm.yaml
index fe6fdd9..664742e 100644
--- a/5g-control-plane/templates/service-udm.yaml
+++ b/5g-control-plane/templates/service-udm.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.udm.deploy }}
diff --git a/5g-control-plane/templates/service-udr.yaml b/5g-control-plane/templates/service-udr.yaml
index 3c13170..c607327 100644
--- a/5g-control-plane/templates/service-udr.yaml
+++ b/5g-control-plane/templates/service-udr.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.udr.deploy }}
diff --git a/5g-control-plane/templates/service-webui.yaml b/5g-control-plane/templates/service-webui.yaml
index b91e094..f3c3ff5 100644
--- a/5g-control-plane/templates/service-webui.yaml
+++ b/5g-control-plane/templates/service-webui.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.webui.deploy }}
diff --git a/5g-control-plane/values.yaml b/5g-control-plane/values.yaml
index 891e44a..c48a102 100644
--- a/5g-control-plane/values.yaml
+++ b/5g-control-plane/values.yaml
@@ -1,6 +1,6 @@
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 images:
   tags:
diff --git a/5g-ran-sim/Chart.yaml b/5g-ran-sim/Chart.yaml
index 733afff..69c239e 100644
--- a/5g-ran-sim/Chart.yaml
+++ b/5g-ran-sim/Chart.yaml
@@ -1,11 +1,11 @@
 ---
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 apiVersion: v1
 description: 5G RAN Simulator Service
 name: 5g-ran-sim
 icon: https://guide.opencord.org/logos/cord.svg
 
-version: 0.4.3
+version: 0.4.4
diff --git a/5g-ran-sim/templates/NOTES.txt b/5g-ran-sim/templates/NOTES.txt
index fe31845..74c9919 100644
--- a/5g-ran-sim/templates/NOTES.txt
+++ b/5g-ran-sim/templates/NOTES.txt
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 */ -}}
 
diff --git a/5g-ran-sim/templates/_helpers.tpl b/5g-ran-sim/templates/_helpers.tpl
index 700d36c..d38105e 100644
--- a/5g-ran-sim/templates/_helpers.tpl
+++ b/5g-ran-sim/templates/_helpers.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 */ -}}
 
diff --git a/5g-ran-sim/templates/bin/_gnbsim-run.sh.tpl b/5g-ran-sim/templates/bin/_gnbsim-run.sh.tpl
index 99d41cf..130d18a 100644
--- a/5g-ran-sim/templates/bin/_gnbsim-run.sh.tpl
+++ b/5g-ran-sim/templates/bin/_gnbsim-run.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -xe
 
diff --git a/5g-ran-sim/templates/configmap-gnbsim.yaml b/5g-ran-sim/templates/configmap-gnbsim.yaml
index c7d5b14..0368ec2 100644
--- a/5g-ran-sim/templates/configmap-gnbsim.yaml
+++ b/5g-ran-sim/templates/configmap-gnbsim.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.gnbsim.deploy }}
diff --git a/5g-ran-sim/templates/networks.yaml b/5g-ran-sim/templates/networks.yaml
index e716f03..e75920e 100644
--- a/5g-ran-sim/templates/networks.yaml
+++ b/5g-ran-sim/templates/networks.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
- # SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+ # SPDX-License-Identifier: Apache-2.0
 */}}
 
 ---
diff --git a/5g-ran-sim/templates/service-gnbsim.yaml b/5g-ran-sim/templates/service-gnbsim.yaml
index 003b625..e0d572f 100644
--- a/5g-ran-sim/templates/service-gnbsim.yaml
+++ b/5g-ran-sim/templates/service-gnbsim.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.gnbsim.deploy }}
diff --git a/5g-ran-sim/templates/statefulset-gnbsim.yaml b/5g-ran-sim/templates/statefulset-gnbsim.yaml
index 9655f25..c4fc8a7 100644
--- a/5g-ran-sim/templates/statefulset-gnbsim.yaml
+++ b/5g-ran-sim/templates/statefulset-gnbsim.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.gnbsim.deploy }}
diff --git a/5g-ran-sim/values.yaml b/5g-ran-sim/values.yaml
index 6c58890..5c9fd36 100644
--- a/5g-ran-sim/values.yaml
+++ b/5g-ran-sim/values.yaml
@@ -1,6 +1,6 @@
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 images:
   tags:
diff --git a/5g-test-apps/Chart.yaml b/5g-test-apps/Chart.yaml
index 57e7809..a8a984c 100644
--- a/5g-test-apps/Chart.yaml
+++ b/5g-test-apps/Chart.yaml
@@ -1,14 +1,14 @@
 ---
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 apiVersion: v2
 description: This is the dbtestapp
 name: 5g-test-apps
 icon: https://guide.opencord.org/logos/cord.svg
 
-version: 0.1.2
+version: 0.1.3
 
 dependencies:
   - name: mongodb
diff --git a/5g-test-apps/templates/NOTES.txt b/5g-test-apps/templates/NOTES.txt
index d81d019..872820e 100644
--- a/5g-test-apps/templates/NOTES.txt
+++ b/5g-test-apps/templates/NOTES.txt
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 */ -}}
 
diff --git a/5g-test-apps/templates/_helpers.tpl b/5g-test-apps/templates/_helpers.tpl
index c03ba2a..f4e96f6 100644
--- a/5g-test-apps/templates/_helpers.tpl
+++ b/5g-test-apps/templates/_helpers.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 */ -}}
 
diff --git a/5g-test-apps/templates/bin/_dbtestapp-run.sh.tpl b/5g-test-apps/templates/bin/_dbtestapp-run.sh.tpl
index 804fd26..a7c43bd 100644
--- a/5g-test-apps/templates/bin/_dbtestapp-run.sh.tpl
+++ b/5g-test-apps/templates/bin/_dbtestapp-run.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -xe
 
diff --git a/5g-test-apps/templates/configmap-dbtestapp.yaml b/5g-test-apps/templates/configmap-dbtestapp.yaml
index ec46eb0..7bc9396 100644
--- a/5g-test-apps/templates/configmap-dbtestapp.yaml
+++ b/5g-test-apps/templates/configmap-dbtestapp.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.dbtestapp.deploy }}
diff --git a/5g-test-apps/templates/deployment-dbtestapp.yaml b/5g-test-apps/templates/deployment-dbtestapp.yaml
index 5bb82dd..c349db4 100644
--- a/5g-test-apps/templates/deployment-dbtestapp.yaml
+++ b/5g-test-apps/templates/deployment-dbtestapp.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.dbtestapp.deploy }}
diff --git a/5g-test-apps/values.yaml b/5g-test-apps/values.yaml
index 80b8047..7e1af5a 100644
--- a/5g-test-apps/values.yaml
+++ b/5g-test-apps/values.yaml
@@ -1,6 +1,6 @@
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 images:
   tags:
diff --git a/LICENSES/LicenseRef-ONF-Member-Only-1.0.txt b/LICENSES/LicenseRef-ONF-Member-Only-1.0.txt
deleted file mode 100644
index 399d958..0000000
--- a/LICENSES/LicenseRef-ONF-Member-Only-1.0.txt
+++ /dev/null
@@ -1,294 +0,0 @@
-ONF Member-Only Software License
-Version 1.0
-Nov 2021
-
-This ONF Member-Only Software License (this "License") is entered into by and
-between Open Networking Foundation ("ONF") and you and/or the entity on whose
-behalf you are accessing the Works (as defined in Section 1 below) ("you").
-This License forms a legally binding contract between you and ONF in relation
-to your access to and use of the Works. You may not access or use the Works if
-you do not accept this License.
-
-By accessing or using the Works, you hereby agree to the terms of this License.
-You may not use the Works and may not accept this License if you are a person
-barred from receiving the Works under the laws of the United States or other
-countries, including the country from which you access or use the Works. If you
-are agreeing to be bound by this License on behalf of your employer or other
-entity, you represent and warrant that you have full legal authority to bind
-your employer or such entity to this License. If you do not have the requisite
-authority, you may not accept this License or access or use the Works on behalf
-of your employer or any other entity.  You and ONF acknowledge and agree as
-follows:
-
-1. DEFINITIONS.
-
-"Source" form shall mean the preferred form for making modifications, including
-but not limited to software source code, documentation source, and
-configuration files.
-
-"Object" form shall mean any form resulting from mechanical transformation or
-translation of a Source form, including but not limited to compiled object
-code, generated documentation, and conversions to other media types.
-
-"Works" shall mean the works of authorship, whether in Source or Object form,
-made available under this License, as indicated by a copyright notice/header
-file that is included in or attached to the Works.
-
-2. BACKGROUND.
-
-The purpose of this License is to provide ONF member companies in good standing
-("Members") with early access to software projects currently in development by
-ONF prior to their public release, to allow Members to review and test the
-Works internally for the purpose of making further contributions to the
-applicable project.  Members who are Partner-level Members at the time they
-first access the Works are additionally permitted under this License to use the
-Works internally for the purpose of building and developing products and
-services for commercial purposes as defined in Section 4.  However, this
-License does not permit any Member, regardless of Member level, to redistribute
-all or any portion of the Works, except as part of a contribution back to the
-applicable project, in accordance with Section 8 below, or in binary form as
-provided for Partner-level Members in Section 4 below.  You understand and
-agree that ONF has the sole right to sublicense and distribute a public version
-of the final code base for the applicable project to third parties under the
-2.0 version of the Apache License, or other permissive license terms selected
-by ONF in its sole discretion.
-
-The Purpose of this License is to incubate the development of new software
-projects by providing a framework for ONF Members to access and contribute to
-the projects while minimizing the potential for forking or misuse of the
-projects.  Nothing in this Background paragraph, however, shall require ONF to
-take any particular course of action regarding any Works covered by this
-License.
-
-3. LIMITED LICENSE TO ALL MEMBERS IN GOOD STANDING.
-
-Subject to your complete and ongoing compliance with all the terms and
-conditions set forth in this License, including without limitation all license
-limitations and restrictions set forth herein, ONF grants you the following
-limited, non-exclusive, non-transferable, non-sublicensable, revocable license
-to use, and (where applicable) authorize your employees and contractors
-performing work on your behalf (but only if such contractors are themselves
-Members of ONF and accept the terms of this License) to use the Works
-internally solely in connection with (a) reviewing, testing, modifying and
-creating derivatives of the Works for the sole purpose of making contributions
-by you to the code repository for the applicable project maintained by ONF; and
-(b) building, developing and testing your own applications or components that
-may interoperate with or incorporate the Works ("Applications") for the
-purposes of internal evaluation only.
-
-4. ADDITIONAL LICENSE TO PARTNER-LEVEL MEMBERS IN GOOD STANDING.
-
-Each project subject to this License shall be declared by ONF to be in one of
-two phases:  a) Incubation Phase, or b) Partner Commercialization Phase.  Each
-project shall start in the Incubation Phase, and ONF, at its sole discretion,
-shall determine when each project moves into the Partner Commercialization
-Phase.   Each project shall be documented to be in one of these two phases in
-the Project's README documentation and can be confirmed by contacting ONF.
-
-Once any project moves into the Partner Commercialization Phase, if you are a
-Partner-level ONF Member in good standing at the time you first access the
-Works and for the entire period during which you access and use the Works, in
-addition to the rights granted in Section 3, and subject to your complete and
-ongoing compliance with all the terms and conditions set forth in this License,
-including without limitation all license limitations and restrictions set forth
-herein, ONF grants you the limited, non-exclusive, non-transferable,
-non-sublicensable, revocable license to use, and (where applicable) authorize
-your employees and contractors performing work on your behalf (but only if such
-contractors are themselves Members of ONF and accept the terms of this License)
-to use, test, modify and create derivatives of the Works internally for the
-purpose of building, developing, testing, marketing, offering for sale and
-selling commercial products and services to third parties.  Wherever possible,
-you will take reasonable precautions to ensure Works remain accessible only to
-ONF Members, and any commercial product or service requiring redistribution of
-the Works, of modifications of the Works or of derivatives of the Works must be
-made solely in binary machine code form where possible to further this aim.
-
-Partners-level Members gaining additional insights as a result of accessing and
-using the Works for commercial products and services are expected to provide
-feedback to and to make contributions to the project for the benefit of both
-the project and the general membership.
-
-You may verify your company's Partner-level membership status on the ONF
-website at: https://www.opennetworking.org/member-listing/.
-
-4.1 GRACE PERIOD FOR NON-PARTNER-LEVEL MEMBERS
-
-If you are not a Partner-level Member and you wish to benefit from the rights
-granted to ONF Partners in Section 4, you have a 90-day grace period from the
-day you first access the Works to upgrade to a Partner-Level ONF Membership.
-Should you upgrade within this grace period, you will be recognized as if you
-had been a Partner on the day you first accessed the Works for the purpose of
-interpreting your rights under Section 4.
-
-5. RESTRICTIONS.
-
-By accessing or using the Works, you represent, warrant, and covenant that you
-and/or the entity on whose behalf you are accessing the Works is a Member in
-good standing of ONF.
-
-You acknowledge that, except for the limited rights expressly set forth above,
-the foregoing licenses do not include any right to, and you agree not to (i)
-redistribute, sell, lease, license, modify or otherwise create any derivative
-works of any portion of the Works, or (ii) distribute, deploy, or otherwise
-utilize the Works or Applications for any public, production, commercial, or
-other similar purpose other than internal use for evaluation and development of
-contributions to the code repository for the applicable project maintained by
-ONF and non-public, experimental Applications.
-
-Except as expressly provided herein, you may not (w) reproduce, distribute,
-publicly display, or publicly perform any part of the Works, (x) decompile,
-reverse engineer, or otherwise access or attempt to access source code not made
-available to you in source code form, (y) make or attempt to make any
-modification to, or otherwise create any derivative works of, the Works; or (z)
-remove, obscure, interfere with or circumvent any feature of the Works,
-including without limitation any copyright or other intellectual property
-notices, security, or access control mechanism. You agree that you will not use
-the Works to do anything illegal, including facilitating, promoting, or
-otherwise encouraging any illegal activities.
-
-You represent and warrant that the Works will not be shipped, transferred or
-exported into any country or used in any manner prohibited by the United States
-Export Administration Act or any other export laws, restrictions or regulations
-(collectively the "Export Laws"). In addition, if the Works are identified as
-an export controlled item under the Export Laws, you represent and warrant that
-you are not a citizen, or otherwise located within, an embargoed nation
-(including without limitation Crimea, Cuba, Iran, North Korea, Sudan, or Syria)
-and that you are not otherwise prohibited under the Export Laws from receiving
-the Works.
-
-ANY USE IN VIOLATION OF THE FOREGOING LIMITATIONS AND RESTRICTIONS IS STRICTLY
-PROHIBITED, AND UNLICENSED.
-
-6. RESERVATION OF RIGHTS.
-
-The Works are owned by ONF and/or its licensors, and are licensed, not sold, to
-you. The Works are protected by copyright, trade dress, patent, and trademark
-laws of the United States and other jurisdictions, international conventions,
-and all other relevant intellectual property and proprietary rights, and
-applicable laws (collectively, the "Intellectual Property Rights"). You agree
-that ONF or its subsidiaries or affiliated companies and/or its licensors own
-all legal right, title and interest in and to the Works, including any and all
-Intellectual Property Rights. ONF reserves all rights not expressly granted in
-this License. You do not acquire any right, title or interest to the Works,
-whether by implication, estoppel, or otherwise, except for the limited rights
-set forth in this License.
-
-You agree that the form and nature of the Works that ONF provides may change
-without prior notice to you and that future versions of the Works may be
-incompatible with applications developed using previous versions of the Works.
-You agree that ONF may stop (permanently or temporarily) providing the Works
-(or any features within the Works) to you or to users generally at ONF's sole
-discretion, without prior notice to you. Nothing in this License gives you a
-right to use any of ONF's trade names, trademarks, service marks, logos, domain
-names, or other distinctive brand features.
-
-7. PURPOSE AND USE.
-
-You agree that you will not engage in any activity with the Works, including
-the development or distribution of an Application that interferes with,
-disrupts, damages, or accesses in an unauthorized manner the servers, networks,
-or other properties or services of any third party. You agree that you are
-solely responsible for (and that ONF has no responsibility to you or to any
-third party for) any data, content, or resources that you create, transmit or
-display. You agree that you are solely responsible for (and that ONF has no
-responsibility to you or to any third party for) any breach of your obligations
-under this License, any applicable third party contract or terms of service, or
-any applicable law or regulation, and for the consequences (including any loss
-or damage which ONF or any third party may suffer) of any such breach.
-
-8. FEEDBACK; CONTRIBUTIONS.
-
-If you provide ONF with any comments, bug reports, feedback, enhancements, or
-modifications proposed or suggested by you for the Works ("Feedback"), such
-Feedback will be submitted as a Contribution to the applicable project
-maintained by ONF under the terms and conditions of a Contributor License
-Agreement between you and ONF, is provided on a non-confidential basis
-(notwithstanding any notice to the contrary you may include in any accompanying
-communication), and ONF shall have the right to use such Feedback at its
-discretion, including, but not limited to the incorporation of such Feedback
-into the Works and any final code base that may be derived from the Works.
-
-9. TERMINATION OF THIS LICENSE.
-
-This License will continue to apply until terminated by either you or ONF as
-set out below. If you want to terminate this License, you may do so by ceasing
-your use of the Works. If you cease being a Member in good standing of ONF,
-this License will terminate automatically and without further notice to you.
-ONF may at any time terminate this License: (a) if you have breached any
-provision of this License; or (b) at ONF's convenience.  When this License
-comes to an end, except as otherwise set forth in this paragraph 9, all of the
-legal rights, obligations and liabilities that you and ONF have benefited from,
-been subject to (or which have accrued over time while this License has been in
-force) or which are expressed to continue indefinitely, shall be unaffected by
-this cessation, and paragraphs 1, 2 and 5 through 14 shall continue to apply to
-such rights, obligations and liabilities indefinitely.  In addition, unless
-this License is terminated by ONF as a result of your breach of any provision
-of this License, Partner-level Members entitled to the benefits of Section 4 of
-this License shall also retain all rights granted by Section 4 so as long as
-you remain a Partner-level Member in good standing.
-
-10. DISCLAIMER OF WARRANTIES.
-
-YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE WORKS IS AT YOUR SOLE
-RISK AND THAT THE WORKS ARE PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT
-WARRANTY OF ANY KIND FROM ONF. YOUR USE OF THE WORKS IS AT YOUR OWN DISCRETION
-AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM
-OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. ONF FURTHER
-EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. ONF
-EXPRESSLY DISCLAIMS ANY WARRANTIES OF ANY KIND WITH RESPECT TO THE ACCURACY OR
-FUNCTIONALITY OF THE WORKS, AND WITH RESPECT TO THE ACCURACY, VALIDITY, OR
-COMPLETENESS OF ANY INFORMATION OR FEATURES AVAILABLE THROUGH THE WORKS, OR THE
-QUALITY OR CONSISTENCY OF THE WORKS OR RESULTS OBTAINED THROUGH THEIR USE.
-
-11. LIMITATION OF LIABILITY.
-
-YOU EXPRESSLY UNDERSTAND AND AGREE THAT ONF, ITS SUBSIDIARIES AND AFFILIATES,
-AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES
-THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT ONF OR
-ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE
-POSSIBILITY OF ANY SUCH LOSSES. IN NO EVENT WILL ONF'S AGGREGATE LIABILITY FOR
-DAMAGES ARISING OUT OF THIS LICENSE OR YOUR USE OF THE WORKS EXCEED THE GREATER
-OF AMOUNTS PAID BY YOU FOR THE WORKS, IF ANY.
-
-12. INDEMNIFICATION.
-
-To the maximum extent permitted by law, you agree to defend, indemnify and hold
-harmless ONF, its affiliates and their respective directors, officers,
-employees and agents from and against any and all claims, actions, suits or
-proceedings, as well as any and all losses, liabilities, damages, costs and
-expenses (including reasonable attorneys' fees) arising out of or accruing from
-(a) your use of the Works, (b) any Application or (for Partner-level Members)
-commercial product or service you develop using the Works that infringes any
-copyright, trademark, trade secret, trade dress, patent or other intellectual
-property right of any person, and (c) any non-compliance by you with this
-License or any applicable law or regulation.
-
-13. CHANGES TO THIS LICENSE.
-
-ONF may make changes to this License as it distributes new versions of the
-Works. When these changes are made, ONF will make a new version of this License
-available on the ONF website.
-
-14. MISCELLANEOUS TERMS.
-
-This License constitutes the entire legal agreement between you and ONF with
-regard to your access and use of the Works, and governs your access and use of
-the Works and completely supersedes any prior agreements between you and ONF in
-relation to the Works, except for any Contributor License Agreement you may
-have executed with ONF. You agree that if ONF does not exercise or enforce any
-legal right or remedy which is contained in this License (or which ONF has the
-benefit of under any applicable law), this will not be taken to be a formal
-waiver of ONF's rights and that those rights or remedies will still be
-available to ONF. If any court of law, having the jurisdiction to decide on
-this matter, rules that any provision of this License is invalid, then that
-provision will be removed from this License without affecting the rest of this
-License. The remaining provisions of this License will continue to be valid and
-enforceable so long as this License, as so modified, does not substantially
-impair the respective expectations or reciprocal obligations of the parties.
-The rights granted in this License may not be assigned or transferred by you
-without the prior written approval of ONF. You shall not be permitted to
-delegate your responsibilities or obligations under this License without the
-prior written approval of ONF.
diff --git a/LICENSES/MIT.txt b/LICENSES/MIT.txt
deleted file mode 100644
index 204b93d..0000000
--- a/LICENSES/MIT.txt
+++ /dev/null
@@ -1,19 +0,0 @@
-MIT License Copyright (c) <year> <copyright holders>
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is furnished
-to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice (including the next
-paragraph) shall be included in all copies or substantial portions of the
-Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
-FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
-OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
-OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/Makefile b/Makefile
index b240541..fb17f28 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
 # SPDX-FileCopyrightText: 2021-present Open Networking Foundation <info@opennetworking.org>
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 .PHONY: all test clean
 
 all:
diff --git a/omec-control-plane/.gitignore b/omec-control-plane/.gitignore
index 894f7fe..616ae1a 100644
--- a/omec-control-plane/.gitignore
+++ b/omec-control-plane/.gitignore
@@ -1,5 +1,5 @@
 # SPDX-FileCopyrightText: 2020-present Open Networking Foundation <info@opennetworking.org>
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 charts/
diff --git a/omec-control-plane/.helmignore b/omec-control-plane/.helmignore
index 0d5155a..931186d 100644
--- a/omec-control-plane/.helmignore
+++ b/omec-control-plane/.helmignore
@@ -1,6 +1,6 @@
 # SPDX-FileCopyrightText: 2020-present Open Networking Foundation <info@opennetworking.org>
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 # Patterns to ignore when building packages.
 # This supports shell glob matching, relative path matching, and
diff --git a/omec-control-plane/Chart.yaml b/omec-control-plane/Chart.yaml
index 4dc3ff3..e8cc587 100644
--- a/omec-control-plane/Chart.yaml
+++ b/omec-control-plane/Chart.yaml
@@ -3,11 +3,11 @@
 # Copyright 2018-present Open Networking Foundation
 #
 # SPDX-License-Identifier: Apache-2.0
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 apiVersion: v1
 description: OMEC control plane services
 name: omec-control-plane
 icon: https://guide.opencord.org/logos/cord.svg
 
-version: 0.10.2
+version: 0.10.3
diff --git a/omec-control-plane/requirements.yaml b/omec-control-plane/requirements.yaml
index 49146fd..8489a8f 100644
--- a/omec-control-plane/requirements.yaml
+++ b/omec-control-plane/requirements.yaml
@@ -1,6 +1,6 @@
 # Copyright 2019-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 dependencies:
   - name: cassandra
diff --git a/omec-control-plane/templates/NOTES.txt b/omec-control-plane/templates/NOTES.txt
index 78c519b..decbd1c 100644
--- a/omec-control-plane/templates/NOTES.txt
+++ b/omec-control-plane/templates/NOTES.txt
@@ -4,7 +4,7 @@
 # Copyright 2018-present Open Networking Foundation
 #
 # SPDX-License-Identifier: Apache-2.0
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 */ -}}
 
diff --git a/omec-control-plane/templates/_helpers.tpl b/omec-control-plane/templates/_helpers.tpl
index be7fc5f..21e3701 100644
--- a/omec-control-plane/templates/_helpers.tpl
+++ b/omec-control-plane/templates/_helpers.tpl
@@ -4,7 +4,7 @@
 # Copyright 2018-present Open Networking Foundation
 #
 # SPDX-License-Identifier: Apache-2.0
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 */ -}}
 
diff --git a/omec-control-plane/templates/bin/_config4g-run.sh.tpl b/omec-control-plane/templates/bin/_config4g-run.sh.tpl
index b568195..8fb7686 100644
--- a/omec-control-plane/templates/bin/_config4g-run.sh.tpl
+++ b/omec-control-plane/templates/bin/_config4g-run.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -xe
 
diff --git a/omec-control-plane/templates/bin/_hss-bootstrap.sh.tpl b/omec-control-plane/templates/bin/_hss-bootstrap.sh.tpl
index b6d8fda..5abef5d 100644
--- a/omec-control-plane/templates/bin/_hss-bootstrap.sh.tpl
+++ b/omec-control-plane/templates/bin/_hss-bootstrap.sh.tpl
@@ -4,7 +4,7 @@
 # Copyright 2019-present Open Networking Foundation
 #
 # SPDX-License-Identifier: Apache-2.0
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -ex
 
diff --git a/omec-control-plane/templates/bin/_hss-run.sh.tpl b/omec-control-plane/templates/bin/_hss-run.sh.tpl
index 6f2d8e9..6b3a5f9 100644
--- a/omec-control-plane/templates/bin/_hss-run.sh.tpl
+++ b/omec-control-plane/templates/bin/_hss-run.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2019-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -ex
 
diff --git a/omec-control-plane/templates/bin/_mme-init.sh.tpl b/omec-control-plane/templates/bin/_mme-init.sh.tpl
index 256da0d..86a8553 100644
--- a/omec-control-plane/templates/bin/_mme-init.sh.tpl
+++ b/omec-control-plane/templates/bin/_mme-init.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2019-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -ex
 
diff --git a/omec-control-plane/templates/bin/_mme-run.sh.tpl b/omec-control-plane/templates/bin/_mme-run.sh.tpl
index 3d47773..5a63633 100644
--- a/omec-control-plane/templates/bin/_mme-run.sh.tpl
+++ b/omec-control-plane/templates/bin/_mme-run.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2019-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 APPLICATION=$1
 
diff --git a/omec-control-plane/templates/bin/_pcrf-bootstrap.sh.tpl b/omec-control-plane/templates/bin/_pcrf-bootstrap.sh.tpl
index 4afc210..54e0ac1 100644
--- a/omec-control-plane/templates/bin/_pcrf-bootstrap.sh.tpl
+++ b/omec-control-plane/templates/bin/_pcrf-bootstrap.sh.tpl
@@ -3,7 +3,7 @@
 # Copyright 2020-present Open Networking Foundation
 #
 # SPDX-License-Identifier: Apache-2.0
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -ex
 
diff --git a/omec-control-plane/templates/bin/_pcrf-run.sh.tpl b/omec-control-plane/templates/bin/_pcrf-run.sh.tpl
index 7be50a6..f450ff8 100644
--- a/omec-control-plane/templates/bin/_pcrf-run.sh.tpl
+++ b/omec-control-plane/templates/bin/_pcrf-run.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -ex
 
diff --git a/omec-control-plane/templates/bin/_spgwc-init.sh.tpl b/omec-control-plane/templates/bin/_spgwc-init.sh.tpl
index 82ca533..9d23f72 100644
--- a/omec-control-plane/templates/bin/_spgwc-init.sh.tpl
+++ b/omec-control-plane/templates/bin/_spgwc-init.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2021-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 while ! curl -f --connect-timeout 5 http://spgwc:8080/startup
 do
diff --git a/omec-control-plane/templates/bin/_spgwc-run.sh.tpl b/omec-control-plane/templates/bin/_spgwc-run.sh.tpl
index fd1096d..e06cbde 100644
--- a/omec-control-plane/templates/bin/_spgwc-run.sh.tpl
+++ b/omec-control-plane/templates/bin/_spgwc-run.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2019-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 APPLICATION=$1
 set -xe
diff --git a/omec-control-plane/templates/configmap-config4g.yaml b/omec-control-plane/templates/configmap-config4g.yaml
index 7a0b722..04c70a3 100644
--- a/omec-control-plane/templates/configmap-config4g.yaml
+++ b/omec-control-plane/templates/configmap-config4g.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.config4g.deploy }}
diff --git a/omec-control-plane/templates/configmap-hss.yaml b/omec-control-plane/templates/configmap-hss.yaml
index 029a8b6..b301fba 100644
--- a/omec-control-plane/templates/configmap-hss.yaml
+++ b/omec-control-plane/templates/configmap-hss.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2019-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 Default values for mcord-vepc-helm.
 This is a YAML-formatted file.
diff --git a/omec-control-plane/templates/configmap-mme.yaml b/omec-control-plane/templates/configmap-mme.yaml
index f45f6ed..b9bb3a0 100644
--- a/omec-control-plane/templates/configmap-mme.yaml
+++ b/omec-control-plane/templates/configmap-mme.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2019-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.mme.deploy }}
diff --git a/omec-control-plane/templates/configmap-pcrf.yaml b/omec-control-plane/templates/configmap-pcrf.yaml
index d5ad7cc..5c7e0ca 100644
--- a/omec-control-plane/templates/configmap-pcrf.yaml
+++ b/omec-control-plane/templates/configmap-pcrf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 Default values for mcord-vepc-helm.
 This is a YAML-formatted file.
diff --git a/omec-control-plane/templates/configmap-spgwc.yaml b/omec-control-plane/templates/configmap-spgwc.yaml
index 6616998..124fb07 100644
--- a/omec-control-plane/templates/configmap-spgwc.yaml
+++ b/omec-control-plane/templates/configmap-spgwc.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2019-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.spgwc.deploy }}
diff --git a/omec-control-plane/templates/service-config4g.yaml b/omec-control-plane/templates/service-config4g.yaml
index ab01c6c..8d426b4 100644
--- a/omec-control-plane/templates/service-config4g.yaml
+++ b/omec-control-plane/templates/service-config4g.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.config4g.deploy }}
diff --git a/omec-control-plane/templates/service-hss.yaml b/omec-control-plane/templates/service-hss.yaml
index 371b363..7ed0145 100644
--- a/omec-control-plane/templates/service-hss.yaml
+++ b/omec-control-plane/templates/service-hss.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2019-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.hss.deploy }}
diff --git a/omec-control-plane/templates/service-mme.yaml b/omec-control-plane/templates/service-mme.yaml
index 8ae95b9..b729ab2 100644
--- a/omec-control-plane/templates/service-mme.yaml
+++ b/omec-control-plane/templates/service-mme.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2019-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.mme.deploy }}
diff --git a/omec-control-plane/templates/service-pcrf.yaml b/omec-control-plane/templates/service-pcrf.yaml
index 116f930..5058b19 100644
--- a/omec-control-plane/templates/service-pcrf.yaml
+++ b/omec-control-plane/templates/service-pcrf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.pcrf.deploy }}
diff --git a/omec-control-plane/templates/service-spgwc.yaml b/omec-control-plane/templates/service-spgwc.yaml
index c97689a..082a7bc 100644
--- a/omec-control-plane/templates/service-spgwc.yaml
+++ b/omec-control-plane/templates/service-spgwc.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2019-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.spgwc.deploy }}
diff --git a/omec-control-plane/templates/statefulset-config4g.yaml b/omec-control-plane/templates/statefulset-config4g.yaml
index 2a20980..df3b8a7 100644
--- a/omec-control-plane/templates/statefulset-config4g.yaml
+++ b/omec-control-plane/templates/statefulset-config4g.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.config4g.deploy }}
diff --git a/omec-control-plane/templates/statefulset-hss.yaml b/omec-control-plane/templates/statefulset-hss.yaml
index a69b4ac..1dc7e49 100644
--- a/omec-control-plane/templates/statefulset-hss.yaml
+++ b/omec-control-plane/templates/statefulset-hss.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2019-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 Default values for mcord-vepc-helm.
 This is a YAML-formatted file.
diff --git a/omec-control-plane/templates/statefulset-mme.yaml b/omec-control-plane/templates/statefulset-mme.yaml
index d690bb5..4c7744e 100644
--- a/omec-control-plane/templates/statefulset-mme.yaml
+++ b/omec-control-plane/templates/statefulset-mme.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2019-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.mme.deploy }}
diff --git a/omec-control-plane/templates/statefulset-pcrf.yaml b/omec-control-plane/templates/statefulset-pcrf.yaml
index a7eb327..8fa34d8 100644
--- a/omec-control-plane/templates/statefulset-pcrf.yaml
+++ b/omec-control-plane/templates/statefulset-pcrf.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 Default values for mcord-vepc-helm.
 This is a YAML-formatted file.
diff --git a/omec-control-plane/templates/statefulset-spgwc.yaml b/omec-control-plane/templates/statefulset-spgwc.yaml
index 2262e65..953bafa 100644
--- a/omec-control-plane/templates/statefulset-spgwc.yaml
+++ b/omec-control-plane/templates/statefulset-spgwc.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2019-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.spgwc.deploy }}
diff --git a/omec-control-plane/values.yaml b/omec-control-plane/values.yaml
index b38c2f4..8a56af8 100644
--- a/omec-control-plane/values.yaml
+++ b/omec-control-plane/values.yaml
@@ -2,7 +2,7 @@
 # Copyright 2018-present Open Networking Foundation
 #
 # SPDX-License-Identifier: Apache-2.0
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 images:
   tags:
diff --git a/omec-sub-provision/Chart.yaml b/omec-sub-provision/Chart.yaml
index 38d3fc9..2f22139 100644
--- a/omec-sub-provision/Chart.yaml
+++ b/omec-sub-provision/Chart.yaml
@@ -1,11 +1,11 @@
 ---
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 apiVersion: v2
 description: Mobile Sim Provisioning services
 name: omec-sub-provision
 icon: https://guide.opencord.org/logos/cord.svg
 
-version: 0.4.2
+version: 0.4.3
diff --git a/omec-sub-provision/templates/NOTES.txt b/omec-sub-provision/templates/NOTES.txt
index b7e5000..76fa1d8 100644
--- a/omec-sub-provision/templates/NOTES.txt
+++ b/omec-sub-provision/templates/NOTES.txt
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 */ -}}
 
diff --git a/omec-sub-provision/templates/_helpers.tpl b/omec-sub-provision/templates/_helpers.tpl
index 706fcce..98fd118 100644
--- a/omec-sub-provision/templates/_helpers.tpl
+++ b/omec-sub-provision/templates/_helpers.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 */ -}}
 
diff --git a/omec-sub-provision/templates/bin/_simapp-run.sh.tpl b/omec-sub-provision/templates/bin/_simapp-run.sh.tpl
index 1f6ec76..dab590a 100644
--- a/omec-sub-provision/templates/bin/_simapp-run.sh.tpl
+++ b/omec-sub-provision/templates/bin/_simapp-run.sh.tpl
@@ -2,7 +2,7 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 set -xe
 
diff --git a/omec-sub-provision/templates/configmap-simapp.yaml b/omec-sub-provision/templates/configmap-simapp.yaml
index 50229a3..da2470c 100644
--- a/omec-sub-provision/templates/configmap-simapp.yaml
+++ b/omec-sub-provision/templates/configmap-simapp.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.simapp.deploy }}
diff --git a/omec-sub-provision/templates/deployment-simapp.yaml b/omec-sub-provision/templates/deployment-simapp.yaml
index 5732f75..62c4547 100644
--- a/omec-sub-provision/templates/deployment-simapp.yaml
+++ b/omec-sub-provision/templates/deployment-simapp.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.simapp.deploy }}
diff --git a/omec-sub-provision/templates/service-simapp.yaml b/omec-sub-provision/templates/service-simapp.yaml
index 74ef8a8..c3727a2 100644
--- a/omec-sub-provision/templates/service-simapp.yaml
+++ b/omec-sub-provision/templates/service-simapp.yaml
@@ -1,7 +1,7 @@
 {{/*
 # Copyright 2020-present Open Networking Foundation
 
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 */}}
 
 {{- if .Values.config.simapp.deploy }}
diff --git a/omec-sub-provision/values.yaml b/omec-sub-provision/values.yaml
index 2cff7d0..1f2cf9b 100644
--- a/omec-sub-provision/values.yaml
+++ b/omec-sub-provision/values.yaml
@@ -1,6 +1,6 @@
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 images:
   tags:
diff --git a/sdcore-helm-charts/.gitignore b/sdcore-helm-charts/.gitignore
index ed7d37a..4d7ac14 100644
--- a/sdcore-helm-charts/.gitignore
+++ b/sdcore-helm-charts/.gitignore
@@ -1,6 +1,6 @@
 # SPDX-FileCopyrightText: 2020-present Open Networking Foundation <info@opennetworking.org>
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 charts/
 requirements.lock
diff --git a/sdcore-helm-charts/Chart.yaml b/sdcore-helm-charts/Chart.yaml
index 934bf7f..3027d5b 100644
--- a/sdcore-helm-charts/Chart.yaml
+++ b/sdcore-helm-charts/Chart.yaml
@@ -1,14 +1,14 @@
 ---
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 apiVersion: v2
 name: sd-core
 description: SD-Core control plane services
 icon: https://guide.opencord.org/logos/cord.svg
 type: application
-version: 0.10.2
+version: 0.10.3
 home: https://opennetworking.org/sd-core/
 maintainers:
   - name: SD-Core Support
diff --git a/sdcore-helm-charts/templates/NOTES.txt b/sdcore-helm-charts/templates/NOTES.txt
index 6dd4cd0..db71d42 100644
--- a/sdcore-helm-charts/templates/NOTES.txt
+++ b/sdcore-helm-charts/templates/NOTES.txt
@@ -2,7 +2,7 @@
 
 # Copyright 2021-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 */ -}}
 
diff --git a/sdcore-helm-charts/templates/_helpers.tpl b/sdcore-helm-charts/templates/_helpers.tpl
index 81c13ff..20d018e 100644
--- a/sdcore-helm-charts/templates/_helpers.tpl
+++ b/sdcore-helm-charts/templates/_helpers.tpl
@@ -2,6 +2,6 @@
 
 # Copyright 2020-present Open Networking Foundation
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 */ -}}
diff --git a/sdcore-helm-charts/values.yaml b/sdcore-helm-charts/values.yaml
index ce6ad64..b34f722 100644
--- a/sdcore-helm-charts/values.yaml
+++ b/sdcore-helm-charts/values.yaml
@@ -1,6 +1,6 @@
 # SPDX-FileCopyrightText: 2021-present Open Networking Foundation <info@opennetworking.org>
 #
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+# SPDX-License-Identifier: Apache-2.0
 
 # Default values for all SD-CORE Helm charts.
 # This is a YAML-formatted file.
