Selfnotes/jenkins

“What is jenkins”???

  1. Jenkins is an open-source automation tool written in Java with plugins built for Continuous Integration purposes.
  2. Jenkins is used to build and test your software projects continuously making it easier for developers to integrate changes to the project, and making it easier for users to obtain a fresh build.
  3. It also allows you to continuously deliver your software by integrating with a large number of testing and deployment technologies.
  4. With Jenkins, organizations can accelerate the software development process through automation.
  5. Jenkins integrates development life-cycle processes of all kinds, including build, document, test, package, stage, deploy, static analysis, and much more.
  6. Jenkins achieves Continuous Integration with the help of plugins.
  7. Plugins allow the integration of Various DevOps stages.
  8. If you want to integrate a particular tool, you need to install the plugins for that tool. For example Git, Maven 2 project, Amazon EC2, HTML publisher etc.

Advantages of Jenkins include:

  • It is an open-source tool with great community support.
  • It is easy to install.
  • It has 1000+ plugins to ease your work. If a plugin does not exist, you can code it and share it with the community.
  • It is free of cost.
  • It is built with Java and hence, it is portable to all the major platforms.

List out top 10 popular Jenkins Plugins

  1. Kubernets

The “Kubernetes” plugin is great for automating build agents on a Kubernetes cluster

Navigating toManage Jenkins -> Configure System -> Cloud -> Kubernetes

2.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.

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.

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.

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.

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.

7.Folders

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.

9.Performance

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

10. Performance Publisher

The “Performance Publisher” plugin generates global and trend reports that can be used for test result analysis.

11. Job DSL

this plugin helps you easily define jobs using a Groovy Based Language (a scripting language). 

12.Build Pipeline

“Build Pipeline” is another interesting plugin because it gives you a view of all the jobs within your build pipeline.

13.Multijob

Multijob” is a free plugin that is useful for cleaning up messes with chain definitions from upstream and downstream jobs

14.Pipeline

“Pipeline” is actually a group of plugins that are used for creating continuous integration pipelines.

15. Monitoring

JavaMelody is an open source monitoring tool for Java and Java EE applications

16. Disk-usage

This plugin shows you how much disk space is being used by your projects.

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.

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.

19. SCM API

“SCM API” is a plugin that integrates with source control management systems.

20. Git

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