RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
Automatics provides Build and deployment pipeline by making use of Jenkins scripts for creating pipeline jobs to build Automatics projects like Orchestration, properties,Device Manager , Device manager UI and giving Docker images as final output. The build job will pull the code of each Automatics Project from CMF repo and build the war files using maven, then the corresponding docker images will be created
Repo : https://code.rdkcentral.com/r/admin/repos/rdk/tools/automatics/dev-ops
Branch : rdk-next
Sub folder :
curl -fsSL https://get.docker.com -o get-docker.sh sh get-docker.sh
Create the docker
group.
$ sudo groupadd docker
Add your user to the docker
group.
$ sudo usermod -aG docker $USER
Log out and log back in so that your group membership is re-evaluated.
If testing on a virtual machine, it may be necessary to restart the virtual machine for changes to take effect.
On a desktop Linux environment such as X Windows, log out of your session completely and then log back in.
On Linux, you can also run the following command to activate the changes to groups:
$ newgrp docker
Verify that you can run docker
commands without sudo
.
$ docker run hello-world
This command downloads a test image and runs it in a container. When the container runs, it prints a message and exits.
The above steps can be used for creating the build pipeline similarly the same steps could be used for creating the deployment pipeline as well.
To pull the code from the repository and building the Docker images of each tools the below parameters as shown in the sample images should be populated.
This job will get the details of VM's in which each of the tools - Orchestration, Automatics Properties ,Device Manager,device manager UI should be deployed including the user details for logging in to the VM's and deploy the docker images of the corresponding tools. All the VM's should have the SSH connection to the Jenkins VM for executing the commands as well as copying the docker images from Jenkins VM. All the tools can be deployed in one execution or each one can be executed individually based on the selection of check box provided. Sample images of the deployment job are as follows
Provide all the fields based on the description provided against each field and press the build button to build the job.
The below configurations needs to be available in Automatics Orchestration, Automatics Properties, Device Manager and Jenkins jobs inorder to trigger a successful Test case execution from Automatics Orchestration
The below set of jobs will be created after successful completion of Automated Build and Deployment execution.
Configure all the jenkins jobs with below mentioned details
Jenkins Job Name | Configuration to be done in Jenkins Jobs | Steps carryout the configuration |
---|---|---|
Automatics_Build_Job | NIL | |
Automatics_Deployment_job | NIL | |
CI_Automatics_Code_Deploy_And_3.0_Api_Parser | NIL | |
CI_Api_Parser_Automatics_Core | Configure automatics properties URL in the JAVA_OPTS "-Dautomatics.properties.file=Automatics_Props_URL_Tobe_Added_here" Under Goals of BUILD Tab |
|
CI_Api_Parser_RDKB_Utils | ||
CI_Api_Parser_RDKV_Utils | ||
CI_Api_Parser_Scriptless_Automation | ||
JOB1 | ||
Deploy_Automatics_Core | Configure your private repo(this is for storing the maven dependencies for automatics) URL in the JAVA_OPTS "-DaltDeploymentRepository=REPO_URL_TOBE_ADDED_HERE" Under Goals of BUILD Tab |
|
Deploy_RDKB_Utils | ||
Deploy_RDKV_Utils | ||
Deploy_RPi_Partner_Java_API |
After completing the above set of configuration "CI_Automatics_Code_Deploy_And_3.0_Api_Parser" job should be executed. This job will build and deploy all the automatics dependencies to the repo and run the parsers needed for Automatics Scriptless automation (Automatics 3.0). After that "Deploy_RPi_Partner_Java_API" job needs to be executed. Once all these jobs are executed successfully it is good to go with jenkins job configuration for Automatics
The below mandatory system configurations needs to be done in Automatics orchestration for running a first dummy Test execution and result verification from automatics.
System Config Param | Description |
---|---|
DEFAULT_SYNDICATION_PARTNER | Default syndication partner. Eg: Company name |
SYNDICATION_PARTNERS | Syndication partner names in comma separated format. Eg: Company name1, Company name2 |
DEVICE_INVENTORY_BASE_URL | Base URL which is having the rest implementation of device management |
EXECUTION_ENVIRONMENT_TYPES | Execution environment types in comma separated format. Supported values are RDKV, RDKB |
AUTOMATICS_BASE_URL | Base URL of Automatics Orchestration Application |
MICROSERVICE_URL | Base URL of Scriptless Service |
The device model needs to be configured and you can see this document for adding device model to automatics orchestration Automatics Orchestration Setup#DeviceModels
Resource details holds the configuration like the URL of jenkins server which needs to be configured in automatics for triggering the job execution and you can see this document for adding resource details to automatics orchestration Automatics Orchestration Setup#ResourceDetails
All the mandatory properties mentioned in the document Automatics Properties should be configured in automatics properties for the successful execution of a test case.