...
- Automatics system (Includes Automatics Orchestration, Automatics Properties, Device Manager, Jenkins)
- Automatics Core and RDKB Utils maven artifacts deployed in self hosted artifactory repository
- Configure Raspberry Pi device in Device Manager, Automatics Orchestration and Automatics Properties
- Configure the test scripts in Automatics Orchestration
- Maven Deploy generic Raspberry Pi Provider Implementation provided by RDKM or partner specific Raspberry Pi Provider Implementation to self hosted artifactory repository.
- Configure Raspberry Pi Provider Implementation artifact details in jenkins job.
...
Automatics Architecture
Automatics system involves Automatics Orchestration, Automatics Properties, Jenkins, Automatics Core, Test Utils, Test Scripts, Device Manager and Partner Provider implementations.
The details on how various components are linked is explained in Automatics Architecture.
Setting up Automatics for Test Execution in Raspberry Pi
Partners can follow detailed steps as given below for test execution.Below steps can be followed to setup Automatics and execute RDKB tests on RPI device.below steps for setting up Automatics for executing test cases in Raspberry Pi.
1. Raspberry Pi with RDKB Stack
Ensure that a Raspberry Pi device loaded with RDKB stack is available for test execution.
2. Setup Automatics
As the next step, partner can work on setting up Automatics system. This includes Automatics Orchestration, Automatics Properties, Device Manager, Jenkins and job configurations, Maven artifact deployment of Automatics Core and RDKB Test Utils.
Hardware Requirements for Automatics is available at Automatics Hardware Requirements.
After VMs with required hardware specifications are ready and available, partner can start setting up tools in the VMs as mentioned below.
- Setup and configure Automatics Orchestration - Automatics Orchestration Setup
- Setup and configure Automatics Properties - Automatics Properties
- Setup and configure Jenkins jobs for test execution - Automatics Jenkins Setup
- Deploy maven artifact of Automatics Core in self hosted maven artifact repository- Automatics Core
- Deploy maven artifact of RDKB Utils in self hosted maven artifact repository- Automatics Core
- Deploy maven artifact of Raspberry Pi Partner Provider Implementation in self hosted maven artifact repository- Automatics Core
3. Configure Device in Automatics
After the setup is ready, partner has to configure the device model and device details in Automatics and its details are available at Device Configuration in Automatics.
4. Validate Automatics Setup
After the system is ready, partner can validate the system by executing test script TC-QUICK-DUMMY-ALL-MODELS from Automatics Orchestration. From the execution, partner can verify communication between below components are working fine. After setup validation, partner can configure RDKB test scripts in Orchestration.
- Communication between Orchestration and Device Manager.
- Communication between Orchestration and Jenkins.
- Communication between Jenkins and Automatics Properties.
5. Import RDKB Test Scripts to Orchestration
Configure the test script details attached in excel RPi_RDKB_TEST_CASE.xls to Automatics Orchestration. The details of importing to Orchestration available at Automatics Orchestration ImportTestScriptandSteps
6. Map RDKB Test Scripts to Raspberry Pi
- To add new RPi device, Open ManageScripts page → Click Run On Models → Enter the Device and image name
- For mapping the device to the Test script, Filter the test script using Filter option from Manage Scripts page → Click Edit Script Details → Click Next → Add the RPi device to the Run On Models option and save
- Setup Automatics system referring Automatics System Setup and ensure that system is up and running.
- Ensure that RPI device is loaded with RDKB stack.
- Configure RDKB RPI device. Detailed steps for device configuration at Device Configuration in Automatics.
- Deploy RPi Java API Provider implementation to maven artifact repository.
- Artifact deployment for RPi Java provider implementation can be automated using jenkins job. The details for the configuration can be found in this link
- Deploy RDKB Utils project to maven artifact repository.
- Documentation on how to configure RDKB Artifact deployment using Jenkins job can be found here.
- RPI Provider dependency management
As part of executing the test in partner environment , partner has to update rdkb-test project pom file to point to the partner provider implementation (it will vary for partners)
For RPI we have added a supporting shell script , which can be configured to the Jenkins Job, so it will add the RPI generic provider dependency to the rdkb-test project pom.xml during run time. And, this can be done by configuring build step under Build Section in Test Execution Jenkins Job.
...