Supported for 2gnbs

Change-Id: I0cee1da8090f07151a980d3e7c0cc2bd71f74152
diff --git a/5g-ran-sim/Chart.yaml b/5g-ran-sim/Chart.yaml
index d8f8320..d9e7f76 100644
--- a/5g-ran-sim/Chart.yaml
+++ b/5g-ran-sim/Chart.yaml
@@ -8,4 +8,4 @@
 name: 5g-ran-sim
 icon: https://guide.opencord.org/logos/cord.svg
 
-version: 0.6.0
+version: 0.6.1
diff --git a/5g-ran-sim/templates/bin/_gnbsim-run.sh.tpl b/5g-ran-sim/templates/bin/_gnbsim-run.sh.tpl
index e262373..c4ed0b1 100644
--- a/5g-ran-sim/templates/bin/_gnbsim-run.sh.tpl
+++ b/5g-ran-sim/templates/bin/_gnbsim-run.sh.tpl
@@ -14,6 +14,10 @@
 cat ./config/gnb.conf
 cat /etc/hosts
 
+{{- define "gnbiplist" -}}
+{{- join "," .Values.config.gnbsim.gnb.ips }}
+{{- end -}}
+
 {{- if not .Values.config.gnbsim.singleInterface }}
 {{- range .Values.config.gnbsim.networkTopo }}
 ip route replace {{ .upfAddr }} via {{ .upfGw }}
diff --git a/5g-ran-sim/templates/statefulset-gnbsim.yaml b/5g-ran-sim/templates/statefulset-gnbsim.yaml
index 7b4e371..cae9c64 100644
--- a/5g-ran-sim/templates/statefulset-gnbsim.yaml
+++ b/5g-ran-sim/templates/statefulset-gnbsim.yaml
@@ -26,11 +26,11 @@
 {{- if not .Values.config.gnbsim.singleInterface }}
       annotations:
         k8s.v1.cni.cncf.io/networks: '[
-           { 
+           {
                "name": "gnb-net",
                "interface": "gnb",
 {{- if semverCompare ">=1.16-0" .Capabilities.KubeVersion.GitVersion }}
-               "ips": [{{ .Values.config.gnbsim.gnb.ip | quote }}]
+               "ips": [ {{ include "gnbiplist" .}} ]
 {{- else }}
                "ips": {{ .Values.config.gnbsim.gnb.ip | quote }}
 {{- end }}
diff --git a/5g-ran-sim/values.yaml b/5g-ran-sim/values.yaml
index b88d7da..874f5ff 100644
--- a/5g-ran-sim/values.yaml
+++ b/5g-ran-sim/values.yaml
@@ -44,7 +44,9 @@
     cniPlugin: macvlan # supported CNIs: sriov, macvlan, host-device
     iface: data # master in macvlan or device in host-device
     gnb:
-      ip: 192.168.251.5/24 #user plane IP at gnb if 2 separate interface provided
+      ips: 
+      - '"192.168.251.5/24"' #user plane IP at gnb if 2 separate interface provided
+      - '"192.168.251.6/32"' #user plane IP at gnb if 2 separate interface provided
     httpServer:
       enable: false
       ipAddr: "POD_IP"
@@ -69,7 +71,7 @@
           execInParallel: false #run all profiles in parallel
           gnbs: # pool of gNodeBs
             gnb1:
-              n2IpAddr: # gNB N2 interface IP address used to connect to AMF 
+              n2IpAddr: # gNB N2 interface IP address used to connect to AMF
               n2Port: 9487 # gNB N2 Port used to connect to AMF
               n3IpAddr: 192.168.251.5 # gNB N3 interface IP address used to connect to UPF
               n3Port: 2152 # gNB N3 Port used to connect to UPF
@@ -78,14 +80,14 @@
                 plmnId:
                   mcc: 208 # Mobile Country Code (3 digits string, digit: 0~9)
                   mnc: 93 # Mobile Network Code (2 or 3 digits string, digit: 0~9)
-                gNbId: 
+                gNbId:
                   bitLength: 24
                   gNBValue: "000102" # gNB identifier (3 bytes hex string, range: 000000~FFFFFF)
               supportedTaList:
               - tac: "000001" # Tracking Area Code (3 bytes hex string, range: 000000~FFFFFF)
                 broadcastPlmnList:
                   - plmnId:
-                      mcc: 208 
+                      mcc: 208
                       mnc: 93
                     taiSliceSupportList:
                         - sst: 1 # Slice/Service Type (uinteger, range: 0~255)
@@ -94,7 +96,32 @@
                 hostName: amf # Host name of AMF
                 ipAddr: # AMF IP address
                 port: 38412 # AMF port
- 
+            gnb2:
+              n2IpAddr: # gNB N2 interface IP address used to connect to AMF 
+              n2Port: 9488 # gNB N2 Port used to connect to AMF
+              n3IpAddr: 192.168.251.6 # gNB N3 interface IP address used to connect to UPF
+              n3Port: 2152 # gNB N3 Port used to connect to UPF
+              name: gnb2 # gNB name that uniquely identify a gNB within application
+              globalRanId:
+                plmnId:
+                  mcc: 208 # Mobile Country Code (3 digits string, digit: 0~9)
+                  mnc: 93 # Mobile Network Code (2 or 3 digits string, digit: 0~9)
+                gNbId: 
+                  bitLength: 24
+                  gNBValue: "000112" # gNB identifier (3 bytes hex string, range: 000000~FFFFFF)
+              supportedTaList:
+              - tac: "000001" # Tracking Area Code (3 bytes hex string, range: 000000~FFFFFF)
+                broadcastPlmnList:
+                  - plmnId:
+                      mcc: 208
+                      mnc: 93
+                    taiSliceSupportList:
+                        - sst: 1 # Slice/Service Type (uinteger, range: 0~255)
+                          sd: "010203" # Slice Differentiator (3 bytes hex string, range: 000000~FFFFFF)
+              defaultAmf:
+                hostName: amf # Host name of AMF
+                ipAddr: # AMF IP address
+                port: 38412 # AMF port
           profiles: # profile information
             - profileType: register # profile type
               profileName: profile1 # uniqely identifies a profile within application
@@ -196,3 +223,18 @@
                 mcc: 208 # Mobile Country Code (3 digits string, digit: 0~9)
                 mnc: 93 # Mobile Network Code (2 or 3 digits string, digit: 0~9)
               defaultAs: "192.168.250.1" #default icmp pkt destination
+            - profileType: pdusessest
+              profileName: profile8
+              enable: true
+              gnbName: gnb2
+              execInParallel: false #run all subscribers in this profile parallel
+              stepTrigger: false #wait for trigger to move to next step
+              startImsi: 208930100007501
+              ueCount: 5
+              opc: "981d464c7c52eb6e5036234984ad0bcf"
+              key: "5122250214c33e723a5dd523fc145fc0"
+              plmnId:
+                mcc: 208
+                mnc: 93
+              dataPktCount: 5 # Number of UL user data packets to be transmitted. Common for all UEs
+              defaultAs: "192.168.250.1" #default icmp pkt destination