...
- Clone the repo from : git clone https://github.com/onap-oof-pci-poc/ran-sim
- Go to the ran-sim/hcsim-content/gnbsim directory and build the project : JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/ mvn clean install -Dcheckstyle.skip
(Note: the project comes with it's own maven settings in ran-sim/hcsim-content/m2_settings.xml, that are required on top of the standard ONAP settings to build this. For code changes in gnbsim-impl directory
Step 1: Do necessary code changes in gnbsim-impl
Step 2: Issue the build command "JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/ mvn clean install -Dcheckstyle.skip"
Once the mvn build is done, build the docker imageStep 1: Go to directory ~/ran-sim/hcsim-content/gnbsim
Step 2: JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/ mvn clean install -Dcheckstyle.skipStep 3: Import the latest VES certificate into this directory gnbsim-distribution/ rename it as "jssecacerts"
Step 3: cp -r gnbsim-distribution/jssecacerts gnbsim-distribution/target/gnbsim-distribution-1.19.08-SNAPSHOT-hc/gnbsim-distribution-1.19.08-SNAPSHOT/
Step 4: cp -r gnbsim-distribution/honeycomb gnbsim-distribution/target/gnbsim-distribution-1.19.08-SNAPSHOT-hc/gnbsim-distribution-1.19.08-SNAPSHOT/
Step 5: cp -r gnbsim-distribution/Dockerfile gnbsim-distribution/target/gnbsim-distribution-1.19.08-SNAPSHOT-hc/gnbsim-distribution-1.19.08-SNAPSHOT/
Step 6: docker build -t gn gnbsim-distribution/target/gnbsim-distribution-1.19.08-SNAPSHOT-hc/gnbsim-distribution-1.19.08-SNAPSHOT/- Cross check the docker image
docker images | grep gn
To run the Netconf Servers:
- Update ransim and honeycom IP address at ~/ran-sim/hcsim-content/gnbsim/honeycomb/hc/config/gnbsim.json and docker-compose files(step repeated for all hc, cucp, cuup, du folders)
2. Run the up.sh script in ran-sim/hcsim-content/gnbsim/honeycomb. (wait for all the honeycomb servers to come up)
3. Run the mount.sh script in ran-sim/hcsim-content/gnbsim/honeycomb.
After execution of the above script, these servers will be mounted in SDNC(check ransim and SDNR logs if the mount request is successful for all the servers).
Access the restconf page to view the mounted servers: https://<WorkerVMIpAddress>:30267/apidoc/explorer/index.htm
Troubleshooting Common Errors:
...
curl --location --request POST 'http://localhost:8080/templates' --header 'Content-Type: application/json' --data-raw '{
"templateId": "get-nearrtric-by-idgnbdufunction",
"model": "ran-network-schemaset",
"requestType": "query-cps-path",
"xpathTemplate": "//GNBDUFunction/idGNBDUFunction[text()='\''{{idGNBDUFunction}}'\'']/ancestor::NearRTRIC",
"includeDescendants": true,
"transformParam":"NearRTRIC,idNearRTRIC"
}' -i
...
curl --location --request POST 'http://localhost:8080/templates' --header 'Content-Type: application/json' --data-raw '{
"templateId": "get-nearrtric-by-idgnbcucpfunction",
"model": "ran-network-schemaset",
"requestType": "query-cps-path",
"xpathTemplate": "//GNBCUCPFunction/idGNBCUCPFunction[text()='\''{{idGNBCUCPFunction}}'\'']/ancestor::NearRTRIC",
"includeDescendants": true,
"transformParam":"NearRTRIC,idNearRTRIC"
}' -i
...
curl --location --request POST 'http://localhost:8080/templates' --header 'Content-Type: application/json' --data-raw '{
"templateId": "put-nrpci-nrcelldu",
"model": "ran-network-schemaset",
"requestType": "patch",
"xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBDUFunction[@idGNBDUFunction='\''{{idGNBDUFunction}}'\'']/NRCellDU[@idNRCellDU='\''{{idNRCellDU}}'\'']",
"includeDescendants": true
}' -i
...
curl --location --request POST 'http://localhost:8080/templates' --header 'Content-Type: application/json' --data-raw '{
"templateId": "put-nrpci-nrcelldu",
"model": "ran-network-schemaset",
"requestType": "patch",
"xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBDUFunction[@idGNBDUFunction='\''{{idGNBDUFunction}}'\'']/NRCellDU[@idNRCellDU='\''{{idNRCellDU}}'\'']",
"includeDescendants": true
}' -i
...
curl --location --request POST 'http://localhost:8080/templates' --header 'Content-Type: application/json' --data-raw '{
"templateId": "put-ho-nrcellrelation",
"model": "ran-network-schemaset",
"requestType": "patch",
"xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBCUCPFunction[@idGNBCUCPFunction='\''{{idGNBCUCPFunction}}'\'']/NRCellCU[@idNRCellCU='\''{{idNRCellCU}}'\'']/NRCellRelation[@idNRCellRelation='\''{{idNRCellRelation}}'\'']",
"includeDescendants": true
}' -i
...