1. Jenkins Basics

Jenkins is a self-contained, open source automation server which can be used to automate all sorts of tasks such as building, testing, and deploying software. Jenkins can be installed through native system packages, Docker, or even run standalone by any machine with the Java Runtime Environment installed.

Currently there are two flavours of Jenkins.

Jenkins Pipeline(One of the important feature) is a suite of plugins which supports implementing and integrating continuous delivery pipelines into Jenkins. Pipeline provides an extensible set of tools for modeling simple-to-complex delivery pipelines "as code".

AJenkinsfileis a text file that contains the definition of a Jenkins Pipeline and is checked into source control.This is the foundation of "Pipeline-as-Code"; treating the continuous delivery pipeline a part of the application to be version and reviewed like any other code. Creating aJenkinsfileprovides a number of immediate benefits:

  • Automatically create Pipelines for all Branches and Pull Requests

  • Code review/iteration on the Pipeline

  • Audit trail for the Pipeline

  • Single source of truth for the Pipeline, which can be viewed and edited by multiple members of the project.

While the syntax for defining a Pipeline, either in the web UI or with aJenkinsfile, is the same, it’s generally considered best practice to define the Pipeline in aJenkinsfileand check that in to source control.

Last updated