Jenkin pipeline creation
Jenkin pipeline creation step-by-step
What is Jenkins?
Jenkins offers a simple way to set up continuous integration and continuous delivery environment for almost any combination of languages and source code repositories.
What is Jenkins
Pipeline?
In Jenkins, a pipeline is a group of events or jobs
which are interlinked with one another in a sequence.
In simple words, Jenkins Pipeline is a combination
of plugins that support the integration and implementation of continuous
delivery pipelines using Jenkins. A pipeline has an extensible
automation server for creating simple or complex delivery pipelines "as
code," via pipeline DSL (Domain-specific Language).

What is Continuous
Delivery Pipelines? How it Works?
In a Jenkins pipeline, every job or event has some sort of
dependency on at least one or more events.
The picture above represents a continuous delivery pipeline in
Jenkins. It contains a group of states called build, deploy, test and release.
These events are interlinked with each other. Every state has its events, which
work in a sequence called a continuous delivery pipeline.
A continuous delivery pipeline is an automated expression to
display your process for getting software for version control. Thus, every
change made in your software goes through a number of complex processes on its
way to being released. It also involves developing the software in a reliable
and repeatable manner, and the progression of the built software through multiple
stages of testing and deployment.
What is JenkinsFile?
Jenkins pipelines can be defined using a text file called JenkinsFile. You
can implement pipeline as code using JenkinsFile, and this can be defined by
using a domain-specific language (DSL). With JenkinsFile, you can write the
steps needed for running a Jenkins pipeline.
The benefits of using JenkinsFile
are:
- You
can create pipelines automatically for all branches and execute pull
requests with just one JenkinsFile.
- You
can review your code on the pipeline
- You
can audit your Jenkins pipeline
- This
is the singular source for your pipeline and can be modified by multiple
users.
JenkinsFile can be defined by either Web UI or with a
JenkinsFile.
Declarative versus Scripted pipeline
syntax:
There are two types of the syntax used for defining
your JenkinsFile.
1. Declarative
2. Scripted
Declarative:
Declarative pipeline syntax offers an easy way to
create pipelines. It contains a predefined hierarchy to create Jenkins
pipelines. It gives you the ability to control all aspects of a pipeline
execution in a simple, straightforward manner.
Scripted:
Scripted Jenkins pipeline runs on the Jenkins
master with the help of a lightweight executor. It uses very few resources to
translate the pipeline into atomic commands. Both declarative and scripted
syntax are different from each other and are defined totally differently.
Why Use Jenkin's Pipeline?
Jenkins is an open continuous integration server that has the
ability to support the automation of software development processes. You can
create multiple automation jobs with the help of use cases, and run them as a
Jenkins pipeline.
Here are the reasons why you use should use Jenkins pipeline:
- Jenkins the pipeline is implemented as a code which allows multiple users to edit and
execute the pipeline process.
- Pipelines
are robust. So if your server undergoes an unforeseen restart, the pipeline will be automatically resumed.
- You
can pause the pipeline process and make it wait to resume until there is an input from the user.
- Jenkins
Pipelines support big projects. You can run multiple jobs, and even use pipelines in a loop.
Steps to create a pipeline:
Install Build Pipeline
Plugin in Jenkins
With the build
pipeline plugin, you can create a pipeline view of
incoming and outgoing jobs, and create triggers which require manual
intervention.
Here is how you can install the build pipeline plugin
in your Jenkins:
Step 1) The settings for the plugin can be found under Manage
Jenkins > Manage Plugins.
If you have already installed the plugin, it is shown under the installed
tab.
How to Create Jenkins
Pipeline
Once you are logged in to your Jenkins dashboard:
Step 1) Click on the "+" button
on the left-hand side of your Jenkins dashboard to create a pipeline.
Step 2)
1. You will be asked
to give a name to the pipeline view. We shall call it "Mypipeline"
for the duration of this demo.
2. Select Build
a pipeline view under options
3. Click ok
Step 4) In the next
page, you will be asked for some more details to configure your Jenkins
pipeline. Just accept the default settings, and make sure you choose the first
job under the settings.
Click on Apply and
then OK.
This will show you the sample pipeline view of your item, as
given below:
Running a pipeline build
Step 1) For running a pipeline
build, you need to chain your jobs first. For this, go to your first job and
click on configure.
Step 2) Now, under Build
Triggers, check the Build
after other projects are built option.
Thus, a chain for all your jobs
has been created.
Step 3) Install
the Build Pipeline
view plugin if you don't have it installed already.
Step 4) Go to your
Jenkins dashboard and create a view by clicking on the "+" button. Select the Build Pipeline View option
and click OK.
Step 5) Under Pipeline view configuration,
locate Pipeline Flow.
Under Pipeline
flow, select the initial job to run. Now choose the job which
has chains to other jobs, as shown in Step 1 and Step 2.
Here we have selected Guru99 Project 1 as the initial job,
chained to other jobs. So, one by one, the jobs will run in the pipeline.
When the Jenkins pipeline is running, you can check its status
with the help of Red and Green status symbols. Red means the pipeline has
failed, while green indicates success.
In this example, we see that the button is green. Hence, the
pipeline is successful.
Running Jenkins pipeline
Click on Run to
run the Jenkins pipeline. It will look something like this:
In the example above, we are demonstrating a simple
"helloworld.java" program. But in real time projects, you will be
responsible for creating and building complex pipelines in Jenkins. See below
for a sample pipeline view.











Comments
Post a Comment