Jenkins Plug-ins

Jenkins Plug-ins: After completion of the installation process, you need to set up the Jenkins UI. At the time of the setting, it allows you to create an administrator user and password, which you will use on the first webpage. After completing the whole UI set up, you can use the default plug-ins or create your own.

Every tool and technologies of the DevOps world are interconnected with each other with the help of Jenkins. It is possible with Jenkins plug-ins.

Jenkins's community is very strong. There are some default plug-ins pre-installed in your system. This is totally up to you that you can also create your own plug-ins or download from the Jenkins community.

Installation of Jenkins plug-ins:

Jenkins provides different ways to install its plug-ins. To install the plug-ins on the master, we can use two ways:

  1. By using the plug-in manager in the Web UI.
  2. By using the Jenkins command:

In these two approaches, the Jenkins master must be able to download the data from the update center.

Installing process using web UI:

Step1: Firstly, login into the Jenkins tool by using your administrator User ID and password.

Step 2: Go to the dashboard and select the option to manage Jenkins.

Step 3: It will take you to the Manage Jenkins page. It displays many options under it; you have to select the "Manage Plugins” option.

Step 4: It will take you to the page, where it has four sections:

  1. Updates:  In this section, it shows the updates available for currently installed plug-ins. From here, you can update your pre-installed plug-ins.
  2. Available: In this section, it shows all plug-ins which are available in the Jenkins library. Thousands of plug-ins are available in it to handle the different scenarios. You can also install any one of them according to your requirements.
  3. Installed: In this section, it shows those plug-ins which have already been installed.
  4. Advanced: In this section, you can get the plug-ins by HTTP proxy configuration, or you can download the plug-ins from the Jenkins site and upload the plug-ins in the library

Step 5: Go to the available section and choose one of the available section plug-ins according to your requirements.

Step 6: After clicking on the checkbox, it provides you two options to install the plug-ins:

  1. Install without restart
  2. Download now and install after restart

It would be better if you install without a restart.

Step 7: Now it will redirect you to a new page where the installation process begins. Here it will download the plug-ins and its related upgrades. It will take some time to download. When the download is completed, the plug-ins status is converted from pending to success.

Step 8: Now your plug-in is downloaded and is ready to use. You can restart your Jenkins to work properly.

Installing process using Jenkins command:

Command:

Java –jar –jenkins-cli.jar –s http://localhost:8080/ install plugin SOURCE …[ -deploy ] [ -name VAL ] [ -restart ]

SOURCE: Source denoted to a local file that is going to be installed. You can also place the URL at the place of the local file. Jenkins will download the plug-ins from the URL and install it.

-deploy: This command is used to deploy the plug-ins instantly without postponing them until the restart.

-name VAL: This command is optional. It is provided only when it is specified. If the name value is available, then it will be installed by this short name. Normally source is used as the name VAL.

-restart: This command restarts the Jenkins after the successful installation of the plug-ins.

Uninstalling a Plug-in:

It is very simple to uninstall a plug-in. Just go into the installed section (Inside of the manage plug-in page), Jenkins will automatically tell you which plug-in you can uninstall. It will provide you the uninstall button, just select the checkbox and uninstall it easily. It will determine only those plug-ins to uninstall, which have zero dependencies of other plug-ins.

You can also uninstall a plug-in manually by removing its corresponding file (.hpi file) from the Jenkins plug-ins directory. If the removing file has some dependency, then Jenkins master can fail at the booting time. Jenkin's master will show the warning message that some configuration can't be fully loaded.

Some of the pre-installed plug-ins are:

  1. To download data from a source control system such as Git.
  2. Use Built automation tool like mavon
  3. To test thing using selenium
  4. Deploy the code using ansible

Disable a plug-in:

You can also disable a plug-in instead of uninstalling it. You need to uncheck the checkbox only to disable a plug-in. The developer uses this feature when he knows the current plug-in (which is free from all dependencies and can be uninstalled), he will use it in the future.

Categories of Plug-Ins:

There are several categories of Jenkins plug-ins; some of them are given below:

  1. Test
  2. Report
  3. Notification
  4. Deployment or Performance publisher
  5. Compile
  6. Monitoring

Some Useful Jenkins plug-ins based on their categories:

Here are some plug-ins that were given below. These plug-ins are essential to use in Jenkins; you can't assume Jenkins without these plug-ins. They help Jenkins to improve their performance and also help developers with their unique features.

Notification plug-ins:

  1. Dashboard view plug-in: This is a plug-in by which you can keep an eye on all tasks' status. This plug-in provides you a new Jenkins dashboard. It is also capable of counting; it can count the time taken by each job and shows the entire time taken in execution.
  2. Folder plug-in: This plug-in is very popular in Jenkin's world. It is used in grouping the tasks. With the help of this, you can keep similar tasks in a single place. More than 1,20,000 users have downloaded it.

Monitoring plug-ins:

  • Monitoring plug-in: This plug-in helps the CPU to improve the performance. It allocates the chart for the CPU, HTTP response, memory and many more.
  • Matrics plug-in: This plug-in is used as like health checkup of the system. It performs on application-level metrics and informs you about what is happening in real-time.

Performance Enhancer plug-ins:

  • Performance plug-in: This plug-in is used in the Jenkins pipeline to improve the performance. It performs an operation on the XML file with your testing tool.

Jenkins setup plug-ins:

  • Kubernetes plug-in: This plug-in is used to handle the Jenkins server scalability.
  • Amazon ECS container service: With this plug-in's help, you can easily manage the Jenkins cloud slave.
  • Azure container service:  This plug-in is also known as AKS. It is used in the container service.

Test Analysis plug-ins:

  • Test result analyzer: This plug-in is used in testing. It graphically gives the test result, so it makes it easy to find out the result of your test.
  • Bootstrapped multi-test result report plug-in: This plug-in is also used for testing. It provides you the facility to create your test report on HTML.

Flow plug-ins:

  1. Job DSL plug-in: This plug-in is used in the Jenkins pipeline process. With the help of job DSL plug-in, you can obtain a different type of jobs views like: 'Build Monitor View', 'Build Pipeline View', 'Categorized job view' and many more.
  2. Build pipeline plug-in: This is also a pipeline plug-in, used to decide the upward or downward pipeline process. With this plug-in's help, you can also define the triggers manually according to your task requirements.
  3. Pipeline Plug-in: It manages the delivery system in the pipeline process. It assures that the continuous delivery process is going on without any blockage.

Source Control Management plug-ins:

  1. SCM API: It is used to provide a next-generation API to establish a connection with the source control management system.
  2. Git plug-in: By using this plug-in, you can get access to GitHub.
  3. GitHub integration plug-in: This one is the most important plug-in if you are going to unify the Jenkins with the GitHub project. With the help of this plug-in, you can easily access the GitHub repository.

Performance Publisher plug-ins:

The main feature of these plug-ins is that they can work with any testing tool. It generates reports on the basis of all jobs test analysis. This report is also treated as a global and final report. This report tells about all the statistics of jobs and the modification made by the developer.

Example:  

  1. Global Builds stats plug-in: It creates all the final stats related to the project.
  2. Build timeout: This plug-in track how much time is taken by each job and noted the entire time of execution.

Benefits of using plug-ins:

There are a lot of benefits for using the Jenkins tool. A few of them are given below:

  1. It makes the process of converting in GUI from CLI very easy.
  2. It provides accurate data support to project management.
  3. Keep your team in sync.
  4. Easy to debug.
  5. Less time to deliver the project.
  6. Open source and free of cost.

Thin backup Plug-in:

Thin backup is the most popular plug-in available in Jenkins library. It is used to make a backup of Jenkins all data and processes like jobs, configurations, build logs, plug-ins, plug-in configuration, etc.

Installing process of the plug-in:

Step 1: Go into the Jenkins dashboard and click on the manage Jenkins option.

Step 2: Go into the available section and tap on the search icon.

Step3: Search the “Thin Backup” plug-in and install it.

Your plug-in is downloaded; restart the Jenkins to use plug-in properly.

How to backup using Thin backup plug-in:

After installing the current plug-in, apply the following procedure to back up all Jenkins data:

Step 1:

Go into the Jenkins dashboard and click on the manage Jenkins option.

Step 2: Choose the thin backup option.

Step 3:

Here you will get three options:

  1. Backup now
  2. Restore
  3. Settings

Choose the 3rd one (settings).

Step 3.1:

Fill up all the requirements and enable those options you need to backup, now saving the settings.

Step 3.2:

Now go back a single step and choose the 1st option (Backup now).

It will create a backup file according to your settings.

Step 4:

Go back to the directory (that you have specified in your settings section), and you will find that backup is created.

For the backup, your settings must be correct. If it founds any error in your setting, it will create a backup file properly. This plug-in also asks about the location where you need to store the backup.

Backup of a backup:

Sharp and sensible developers create a backup of a backup. It is essential to move back up data to the cloud or any other location like in pen drive, hard disk, etc. it can be harmful to keep the tool, and it's back up at the same location because whenever your tool is crashed, it will get drowned with your backup file also, so it is prudence to keep your backup of a backup.

Pinned plug-in:

This feature was removed in Jenkins version 2.0 and then after all versions from 2.0.0 comes without it.

The pinned plug-in comes in a bundled version of Jenkins.  It is combined with the Jenkins tool.

A pinned plug-in is that plug-in, which is not overwritten by its updates in the updating process. This plugin is marked up by the Jenkins tool itself. These processes are done at the time of the manual updating of the Jenkins tool.

At the time of update, Jenkins creates an empty file on the file system to keep the older version of it safe. This created file was indicated by jenkis_Home/plugins/PLUG-IN_NAME.hpi.pinned.

It is necessary to update the bundled plug-in from the update center for its safety purpose. The bundled version of Jenkins was occasionally updated, not consistently.

Example: Matrix Authorization plug-in.

If it is not pinned, by default, whenever Jenkins is updated, it's all related plug-ins will be updated and overwrite the older version.