RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
Welcome to the Automatics Jenkins Setup and Deployment Guide. This document will walk you through the steps to set up and deploy Automatics applications using Jenkins, ensuring a smooth and efficient process.
Repo : https://code.rdkcentral.com/r/admin/repos/rdk/tools/automatics/dev-ops
Branch : rdk-next
Sub folder :
Before you begin, ensure you have the following:
curl -fsSL https://get.docker.com -o get-docker.sh sh get-docker.sh
sudo groupadd docker sudo usermod -aG docker $USER
newgrp docker
sudo
:docker run hello-world
Clone the repository and navigate to the jenkinsServerSetup
directory:
git clone <repository_url> cd jenkinsServerSetup
Execute the installation script as sudo
:
sudo sh install_jenkins_server.sh
This script installs Docker, pulls the Jenkins server image from Docker Hub, and installs necessary dependencies like Maven and Jenkins plugins. It also creates Automatics Core & RDKB Utils build jobs and build and deployment jobs.
During script execution, provide inputs such as the port for the Jenkins server. After setup, access Jenkins via the browser using the public IP and port (e.g., 192.168.91.44:8909
).
Configure Jenkins security:
Modify the necessary configurations in the pre-created Jenkins jobs (e.g., Maven repo URL, shell script file paths).
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( Full manual configuration can be found here Jenkins Job for Test Execution#2.ConfigureJenkinsJob)
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 |
JUN | Jenkins Admin User Name |
JUP | Jenkins Admin User Password |
You need to configure the below data related to device in Automatics orchestration in order to trigger a Test case successfully for the first time.
All the mandatory properties mentioned in the document Automatics Properties should be configured in automatics properties for the successful execution of a test case.