How to test the O1 interface
O1 interface tests uses O1 siumalotrs to verify the O1 netconf functionality. Currently we can test O1 netconf interface in two ways, first one is automated test-suite and other one is manual verification.
Prerequisite:
docker, docker-compose
Automated test-suite
Test-suite does the following steps
- Brings up simulators(RU & DU)
- Brings up SDNR
- Add simulators to SDNR
- Checks connectivity status by fetching the capabilities
- Updates DU and RU config and prints the output
- Tear down the services
git clone -b dawn https://gerrit.o-ran-sc.org/r/smo/o1.git cd o1/ ./run_tests.sh
Manual verification
- Bring up the SMO o1 netconf client using How to install the O1 interface.
- Bring up simulators using "D" Release - Closed Loop Use Case: Simulation of O-RU and O-DU
- Add the simulators to SDNR.
GUI : Simulators can be added on connect page
REST API:
Example adding DU simulator
curl -u admin:Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U -X POST "http://<HOST_IP>:8181/rests/operations/netconf-node-topology:create-device" -H "accept: */*" -H "Content-Type: application/json" -d '{"input":{"pass-through":{},"login-password":{"username":"netconf","password":"netconf!"},"host":"'"$HOST_IP"'","port":"18310","node-id":"du_sim"}}')
- Verify the configuration changes
GUI go to config page and select the required model and update with new values
REST API
curl -u admin:Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U -X PUT "http://<HOST_IP>:8181/rests/data/network-topology:network-topology/topology=topology-netconf/node=du_sim/yang-ext:mount/o-ran-sc-du-hello-world:network-function/du-to-ru-connection=O-RU-1" -H "accept: */*" -H "Content-Type: application/json" -d "{"du-to-ru-connection":[{"name":"O-RU-1","administrative-state":"UNLOCKED"}]}")
If there are no errors, then the config change is successful.