REC Blueprint is deployed and validated in Nokia Espoo and AT&T Middletown Radio Edge Cloud Validation Labs. Deployment of REC and test cases have been run automatically with different clusters such as Nokia OpenEdge, Dell and HP Gen 10. REC feature testing is based on Cloud TAF (Test Automation Framework), which tests basic k8s features. Results of deployments and testing are publicly available in LF Akraino nexus servers.
Overall Test Architecture
Five server cluster with REC software, as described in Radio Edge Cloud Validation Lab
Cloud TAF, robot based test framework for REC https://gerrit.akraino.org/r/gitweb?p=ta%2Fcloudtaf.git;a=summary Note that this Gerrit link is authoritative. In the event of discrepancies between this wiki page and Gerrit, Gerrit is correct. There is no mechanism for automatically updating this wiki page when tests are added to the test suite and no commitment on the part of the developers to do double entry of test cases. The testcases are located in *.robot files in the aptly named "testcases" subdirectory of the cloudtaf repository. The Jenkins servers clone the cloudtaf repo from Gerrit and run whatever tests are contained in it at that time.
Test API description
- post-install (8 test cases)
- kube-namespace (1 test case)
- kube-service (1 test case)
- smoke-tests (6 test cases)
- pm-supports (2 test cases)
|Test case||Short description|
Check deployment logs (/srv/deployment/log/bootstrap.log). Looking for “Installation complete, Installation Succeeded” in log.
Verify Image Build Number
Show Build number.
Verify Docker Version
Check version of the installed docker (needed Docker version 19.03.3)
Verify Kubernetes Clusters
Check pods’ status in kube-system namespace. All pod needs to be in “Running” state.
Verify State of required services
Check the services are running and active.
Checked services: docker.service, kubelet.service
Verify Node Functionality
Checks the state of the nodes. All nodes need to be in “Ready” state.
Verify Package Manager Status
Try to pull caas/hypercube from common(?) repository. Verify the pull is in success and image is up to date.
Verify Helm Caas Infra Status
Check helm status. Caas-infra helm chart execution status needs to be “DEPLOYED”
Verify creating and testing Namespaces
Create “test-ns” namespace. Create a pod from nginx image in test-ns namespace. Verify the pod is created. Check the pod is created in test-ns namespace. Delete the created pod and namespace.
|10||kube-service||Verify creating and testing services|
Create pod from nginx image. Create a service what contains the previously created pod, and targets TCP port 80 to the pod’s TCP port 80. Verify that the nginx is reachable on TCP port 80. Delete the created service and pod.
Verify Cluster Config Management
|Verify all the nodes names. Verify database: cluster size needs to be 3 (wsrep_cluster_size).|
Verify Cluster Config Management After Reboot Management VIP Node
Reboot the VIP(?) node. Verify the restart same as ‘Verify Cluster Config Management’ test case.
Verify Database Stop And Start
Stop one of the databases. Check database: cluster size needs to be 2.
Start a database node. Check database: cluster size needs to be 3.
Verify Create All And No Roles
Create a user with all-roles.
Create a user with no roles.
Verify all the sudo-“node” user. All need to be root user.
Verify Remotescript Default
Verify ‘remotescript-default’ command execution.
Check resource usage of the nodes (kubectl top node).
Single pane view of how the test score looks like for the Blue print.
|Total Tests||Test Executed||Pass||Fail||In Progress|
ORAN RIC applications are installed after each REC deployment using Jenkins and results are pushed to LF nexus https://nexus.akraino.org/content/sites/logs/att/job/Install_RIC_on_OpenEdge1/