Jenkins is an open-source automation server. More specifically, it's a Continuous Integration server. This tool is often seen as a middle man between your code and your build server because it regularly looks for changes on your server. Once changes are found, it sends them to the build server. It has become very popular among developers, and that’s why I believe it would be nice to have a short list of the Jenkins plugins that we at Apiumhub love the most.
1. Job DSL Plugin
Last release date: January 15, 2017.
Many of us use the UI of Jenkins to configure jobs, but sometimes, you end up with so many jobs that it becomes difficult to maintain and working with UI becomes slow. The Job DSL plugin is great for this situation — it’s quite popular and exceptionally well-documented.
It allows users to create “projects” by using a Domain-Specific Language (DSL). It enables you to automate your Jenkins installations and standardize them by pushing job creation into a script.
Basically, it uses the jobs that are created and makes templates with them. Let’s say that you create other jobs according to a Groovy script. So, if you create one job, write the script, and run that job, you’ll have the other jobs related to the last one created. Keep in mind that not all jobs that are created will directly run — only the main one created will run.
2. Build Pipeline Plugin
Last release date: December 8, 2016.
We’re big fans of Continuous Integration, and we use Jenkins because it provides good support for providing Continuous Delivery. Another one of our favorite Jenkins plugins is the Build Pipeline plugin because it enables us to form a chain of jobs that are based on their dependencies.
The chain of jobs that you create all pass through the quality assurance steps that you can choose to trigger by a bunch of automated steps or manual tests. After they pass through all of this, they are automatically deployed into production. This allows you to integrate external processes such as reviews before deployment.
It’s amazing because it helps you get an overview of your build process. You can see the history, statuses, and where each has arrived in the chain.
3. Delivery Pipeline Plugin
Last release date: January 13, 2017.
We are all aware of the fact that in Continuous Delivery, feedback and visualization of the delivery process are very important. As we mentioned earlier, we use (and love) the Build Pipeline Plugin. The third on our top Jenkins plugins list is the Delivery Pipeline plugin. It’s nice because you can visualize one or more delivery pipelines.
In fact, a pipeline has various stages. Obviously, building, unit testing, packaging, and analyzing the pipeline can become very long when each job is a stage, so here, you can group jobs into the same stage, making your life much easier.
4. Copy Artifact Plugin
Last release date: July 24, 2016.
In some situations, your build jobs don’t really know much about each other because they are isolated (mainly where we are not using a dependency management system).
The copy Artifact plugin will add a build step to copy artifacts from another project. It enables you to copy the needed files from one job to another that can run some tests. You basically choose from which build you want to copy artifacts, and you have good control during that process.
5. JIRA Plugin for Jenkins
Last release date: December 20, 2016.
This plugin integrates JIRA to Jenkins. We find it very useful because we use JIRA all the time and we absolutely need it to work on a project in an organized way between the teams.
It’s practical because you can display Jenkins builds inside JIRA. It will help you in maintaining a proper, organized way of working on a lengthy project and in minimizing the mistakes that occur without JIRA.
I will end this list by saying that for people that are looking to increase their productivity, Jenkins is definitely here to help. It has many features and great Jenkins plugins. It's helpful when it comes to reducing workloads through automation and organization. Installations are, in general, quite simple and quick, and you have many many plugins to choose from — whatever suits your needs. If you’re interested, here’s a list of 17 tools used by software developers on a regular basis.