Top 25 Jenkins plugins for 2021

By Eyal Katz December 22, 2020

Jenkins is the most used open-source CI/CD solution out there. Being a FOSS project usually means that there’s an ever-growing number of extensions and capabilities for Jenkins being developed by users. There are over 1000 plugins available in the Jenkins plugins repository, but only a few of them can be considered essential. 

Since you probably don’t want to spend hours going over hundreds of plugins and reviews, we’ve collected the best and most essential Jenkins plugins for the productive DevOps pro in 2021.

Before we dive into the list of plugins, it’s worth going over the process of installing plugins in Jenkins.

How to install plugins in Jenkins

Installing plugins is a fairly simple task that involves navigating through a few menus and clicking a couple of buttons. When you log in, the first page you will be presented with is the Jenkins dashboard. On the left side, there will be a menu with a Manage Jenkins button.

Clicking this button will take you to the Manage Jenkins menu screen. Under System Configuration, you should see a Manage Plugins button. 

When this button is clicked, you will be routed to the Jenkins Plugin Manager. 

Here there will be a couple of tabs that allow you to view plugins that have updates, plugins that are already installed, install new plugins, and configure some advanced options. By selecting the Available tab, we can install some plugins.

Utilizing the search box, you can search for your desired plugin that you wish to install.

After searching, you should see a list of results. When you find the plugin that you are looking for, there will be a checkbox to the left of the plugin name. Checking the checkbox, and clicking the Install without restart will take you to the installation screen. 

Note that you can click the button Download now and install after restart. However, the plugin will not be readily available until you restart your Jenkins instance.

Top 25 Jenkins plugins for productive DevOps

Setup & Scaling

1. Kubernetes

The “Kubernetes” plugin is great for automating build agents on a Kubernetes cluster. Essentially, the plugin will dynamically create Kubernetes Pods that house a build agent that has started and will stop the agent once the build has completed.

Navigating to Manage Jenkins -> Configure System -> Cloud -> Kubernetes will allow you to easily configure this free plugin. Note that if Jenkins is running on the cluster, the default configuration values can be used instead.

2. Swarm

This interesting plugin is useful if you plan on using Docker Swarm. It helps make life easier by allowing you to add worker nodes to a Jenkins master node effectively creating a cluster and making scalability much easier.

“Swarm” also requires a client CLI application to be installed in order to have the secondary nodes join the primary node. Both the plugin and the CLI application are open source software.

3. Amazon Elastic Container Service

A plugin that deploys build agents to an existing Amazon ECS cluster. These builds run within separate Docker containers that are removed upon completion of the build.

This plugin is free to download on your Jenkins instance, however, an Amazon AWS account is required. As of the time of this writing, the plugin is looking for new maintainers.

4. Azure Container Service

Similar to Amazon ECS, this plugin requires an existing cluster on Azure. Keep in mind that Azure Container Services is being deprecated by Microsoft, but this plugin still supports it as well as Azure Kubernetes Service.

Like Amazon ECS, this plugin is free to use, but it does require an Azure account.

Productivity

5. Dashboard View

Dashboard View enables you to create a customized view within the Jenkins dashboard. The user is able to select which jobs they want to include in the view as well as the different portlets.

Creating a new view in this open source plugin is very easy and only requires a few button clicks.

6. View Job Filters

The “View Job Filters” plugin lets you choose from a wide range of filters to help manage lots of jobs. Basically, this lets you see only the jobs you want to see within a view.

An interesting feature of this free plugin is that it does have a regular expression filter. This will be useful for companies that have hundreds of jobs running.

7. Folders

Tired of looking at a giant list of jobs? The “Folders” plugin allows you to organize them into your own customized folder structure. 

8. Jira

“Jira” is an open source plugin that does exactly what it says. Once installed, you can integrate your Jenkins instance with Atlassian Jira Software.

It is recommended, when using this plugin, to use a Jira service account instead of a personal account.

Performance

9. Performance

With this free plugin, you can run performance reports for your favorite test suites. Supported suites include JUnit, JMeter, Taurus, and others. 

Setting up a performance test is a very easy process that requires you to add a build step to run a performance test.

10. Performance Publisher

The “Performance Publisher” plugin generates global and trend reports that can be used for test result analysis. The really cool part is that it works with any test suite. 

A new version of this plugin hasn’t been released for a couple of years and it is currently up for adoption. However, based on the amount of downloads, there are still plenty of users.

Pipeline / Flow

11. Job DSL

The idea behind this plugin is that when you have a large number of jobs to manage, using the User Interface can be a tedious task. Therefore, this plugin helps you easily define jobs using a Groovy Based Language (a scripting language). 

One thing to keep in mind, is that the original plugin was deprecated. However, the newer version receives a ton of support on Github.

12. Build Pipeline

“Build Pipeline” is another interesting plugin because it gives you a view of all the jobs within your build pipeline. It also shows all the connected jobs that are upstream and downstream. What’s all really cool is if you have any jobs that require intervention before they run, manual triggers can be defined.

At the time of this writing, the plugin has not been updated in a number of years and the current version contains a Stored XSS vulnerability.

13. Multijob

“Multijob” is a free plugin that is useful for cleaning up messes with chain definitions from upstream and downstream jobs. It’s also handy if you want to create a hierarchy of jobs that need to be executed either sequentially or in parallel.

14. Pipeline

“Pipeline” is actually a group of plugins that are used for creating continuous integration pipelines. The interesting part is that these pipelines are written by the user in a domain-specific language.

Like most Jenkins plugins, “Pipeline” is open source and was originally known as “Workflow”. 

Monitoring & Alerting

15. Monitoring

Since Jenkins was written in Java it only makes sense that the “Monitoring” plugin uses JavaMelody. In a nutshell, JavaMelody is an open source monitoring tool for Java and Java EE applications. This plugin monitors errors, issues, security, HTTP sessions, etc.

To access the monitoring reports, navigate to the url http://host/monitoring after installation. 

16. Disk-usage

It is very important for you to know how much storage you have left in your Jenkins instance. This plugin shows you how much disk space is being used by your projects.

Although the plugin hasn’t been updated in a few years, it is still a very handy tool to have in your toolbox. New maintainers are being requested for this plugin as well.

17. Metrics

The “Metrics” plugin uses the Dropwizard Metrics API to conduct standard health checks and gather standard metrics on plugins installed on your Jenkins instance.

Both the “Metrics” plugin and Dropwizard Metrics API are open source tools that receive active support on Github.

18. Mailer

Once configured and added to the Post-Build action of the Jenkins job, the “Mailer” plugin will send you emails based on the job results.

If you do not have an SMTP server, Jenkins will use the default server that is built into Jenkins.

Source Control Management (SCM)

19. SCM API

“SCM API” is a plugin that integrates with source control management systems. The built-in extension points allow developers to receive event notifications from SCM systems and easily browse through repositories and organizations.

20. Git

The “Git” plugin allows jobs to connect to remote repositories and run git operations against them.

From a security standpoint, the plugin utilizes the “Jenkins credentials plugin”. Therefore, the credential types secret text, secret file and certificates are not supported.

21. GitHub Integration

With this plugin, you can integrate your Jenkins instance directly with Github. That means you can pull down code and files from Github to Jenkins, scheduled builds and process pull requests.

22. Subversion

This plugin adds Subversion repositories as an option in the SCM section of the job configurations screen.

It also allows the use of server certificates to connect to your repository.

Tests & Analysis

23. Test Results Analyzer

The “Test Results Analyzer” is another open source plugin that takes away the pain of having to search through every individual build report. Essentially, it shows the result history of the builds in a tabular format that can be filtered based on what you want to see.

24. bootstrapped-multi-test-results-report

Instead of staring at boring looking test results, this plugin makes them look pretty by using the Bootstrap HTML, CSS, and JS library. Support for test suites includes Cucumber, JUnit, RSpec, and TestNG

It has been a few years since the last release, but the plugin still receives a decent amount of downloads.

25. JUnit

The “JUnit” plugin is a free tool that provides graphical visualizations for test results. It also provides a user interface for viewing test reports and failures.

By installing the “Github Checks Plugin”, “JUnit will run checks against your Github projects.

Out of the box, Jenkins is an amazing tool. But when you add a few of these plugins, it becomes even better. Jenkins plugins give you the freedom to connect to SCMs, analyze test results, monitor jobs, build continuous deployment pipelines, etc. 

The ones we have outlined here are considered essential. This is because they have the capabilities to take your DevOps environment to the next level and make it far more productive. Think we missed one? Tell us in the comments!

If you want to use Spectral’s (free) Jenkins plugin email us and we’ll send you installation instruction

Related articles

What is OS Hardening and How Can Developers Implement it

What is OS Hardening and How Can Developers Implement it

As cyber threats become increasingly advanced and complex, organizations are forced to adopt a military attitude of ‘war footing’ to secure their systems and servers. Although

What is a DevOps Toolchain and 7 Reasons to Implement it Now

What is a DevOps Toolchain and 7 Reasons to Implement it Now

DevOps teams are one of the most essential links in the software development chain. It seems like they have a hand in everything that takes place

A developer's guide to implementing Policy as Code

A developer’s guide to implementing Policy as Code

In 2022, the adoption of infrastructure as code (IaC) soared, with IaC domain specific languages like HCL, Shell and GoLang gaining popularity and momentum across the

Stop leaks at the source!