Enable Dark Mode!
what-is-jenkins-how-why-to-use-it.jpg
By: Anagha NK

What Is Jenkins? How & Why To Use It?

Technical

Nowadays, Jenkins is one of the leading open-source automation servers. An automation server is an application server that exposes automatic objects to other applications. This software helps to automate the software development parts like building, testing and deploying. Jenkins provides hundreds of plugins to support any project, facilitating continuous integration and delivery. It is a continuous integration tool that allows development tests and deployment of newly created codes. Using native system packages, Docker, we can install Jenkins. In addition, it can run stand-alone on any machine with JRE installed.

Before Jenkins, the developer had to wait until the entire software code was built and tested to check for errors. So it increased the number of project problems that delay delivery. Using Jenkins, this issue has to solve it. There are hundreds of plugins in Jenkins, and these plugins add functionality to Jenkins or enable Jenkins to integrate with other tools of the software development process.

Why Do We Need Jenkins?

? Developers Making code changes in parallel want to ensure that their changes integrate without errors.

Without Jenkins, manual integration of testing is infrequently happening. Because manual integration doesn't occur frequently, there’s often a large backlog of changes pending to be merged, and this causes the manual integration process to be time-consuming, and we often refer to it as integration hell.

? Developers also want their changes built and tested in a standard environment.

When a developer is testing a new feature locally on their machine, If there is a chance of occurring the issue that machine configuration does not match the same configuration of another developer machine, for instance. It may be the developer's machines might not have the same version of the software framework that they are using to develop their product, and because of this new features might work on one developer's machines. Also, it’s not a different machine Jenkins provides software teams with a standardized build and test environment, allowing them to avoid this issue.

Architecture & Working

what-is-jenkins-how-why-to-use-it-1

The above figure shows the workflow of Jenkins.

First Developer writes the code, then review and tests it. After that, check the code in the source code repository. It may be a tool such as GitHub, git lab, or any other one. Then trigger build in Jenkins. There is communication between the source repository and Jenkins. Test the code automatically using the latest version of the code if the automated build and steps complete successfully. Jenkins will automatically deploy these changes to production. If the build step fails, Jenkins will publish the result to the source.

Installation

Jenkins

curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo tee \
  /usr/share/keyrings/jenkins-keyring.asc > /dev/null

echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \
  https://pkg.jenkins.io/debian-stable binary/ | sudo tee \
  /etc/apt/sources.list.d/jenkins.list > /dev/null
sudo apt-get update
sudo apt-get install jenkins

Java

sudo apt update
sudo apt install openjdk-11-jdk

Running shell commands which have sudo might not work as expected as Jenkins doesn’t have access to read passwords from your Linux box.

1. sudo nano /etc/sudoers

2. Look for the entry for the Jenkins user. Modify as below if found or add a new line.

a. jenkins ALL=(ALL) NOPASSWD: AL

GITHUB INTEGRATION  

Jenkins Credentials

1 Initial Admin Password

2 Username

3 Password

4 Full name

5 E-mail address

6 Secret key

Go to Jenkins for example, the default port 8080.

localhost:8080

what-is-jenkins-how-why-to-use-it-2

Paste the default generated admin password here and continue.

what-is-jenkins-how-why-to-use-it-3

Here choose the option. Now suggested plugins are selected.

what-is-jenkins-how-why-to-use-it-4

If any failure occurs there is an option for retry.

what-is-jenkins-how-why-to-use-it-5

Fill in the corresponding fields and also note the details save and finish it.

what-is-jenkins-how-why-to-use-it-6

While starting to use Jenkins, it will go to the Jenkins dashboard.

what-is-jenkins-how-why-to-use-it-7

Install Jenkins Git Plugin

First, you should have installed Git Plugins in your Jenkins. So login to Jenkins UI using your admin account, and go to 

Manage Jenkins -> Manage Plugins -> Click on Installed Tab -> From here, search for the git plugin in the filter. For the time of installation, if you chose the recommended plugins, it shows the corresponding plugins as shown below.what-is-jenkins-how-why-to-use-it-8

If not, go to the Available tab, search for the git plugin, and click on Install without restarting.

Then Add Jenkins credentials in Github. Go to  Build now ->  Console output.

Here view all modifications of GitHub. If you go to build history, see all history blocks.

what-is-jenkins-how-why-to-use-it-9

Jenkins is flexible, which has led to it being widely deployed because it has been around much longer than other solutions in this space. For this reason, it is well understood, with a broad knowledge base and extensive documentation. Also, abundant community resources.

Please refer to the following link to learn how to add Git credentials in Jenkins.


If you need any assistance in odoo, we are online, please chat with us.



0
Comments



Leave a comment



whatsapp
location

Calicut

Cybrosys Technologies Pvt. Ltd.
Neospace, Kinfra Techno Park
Kakkancherry, Calicut
Kerala, India - 673635

location

Kochi

Cybrosys Technologies Pvt. Ltd.
1st Floor, Thapasya Building,
Infopark, Kakkanad,
Kochi, India - 682030.

location

Bangalore

Cybrosys Techno Solutions
The Estate, 8th Floor,
Dickenson Road,
Bangalore, India - 560042

Send Us A Message