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.shManual 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.