Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Continuous Delivery With Jenkins: Part 4

DZone's Guide to

Continuous Delivery With Jenkins: Part 4

The Pipeline engine embeds Jenkins even more deeply into the continuous delivery domain.

· DevOps Zone ·
Free Resource

The need for DevOps innovation has never been greater. Get the results from over 100 business value assessments in this whitepaper, Digital Darwinism: Driving Digital Transformation, to see the positive impact of DevOps first hand.

This is the last part of a new series of blog posts about Continuous Delivery with Jenkins and the new Pipeline feature.

Over the last 10 years, continuous integration brought tangible improvements to the software delivery lifecycle—improvements that enabled adoption of agile delivery practices. The software industry is now progressing to the next maturity phase with continuous delivery.

With its flexible plugin architecture and 1,000+ plugins, Jenkins is like the person who knows everyone and can work with everyone. Enterprises can utilize any existing tools—whether developed in-house or licensed from a commercial vendor—or bring in a new tool and know that Jenkins will work with it. Moreso, Jenkins is loved by development and operations teams alike. Jenkins bridges both sides of the development/operations divide, bringing both teams together and enabling collaboration between them.

The Pipeline engine contributed by CloudBees engineers who are experts in open source Jenkins, embeds Jenkins even more deeply into the continuous delivery domain. Development and operations teams can express complex delivery pipelines that talk to a myriad of toolsets, survive infrastructure failures and deliver better software, more quickly!

Sample Workflow Script 

At a session given by Jesse Glick during the Jenkins User Conference 2014/Boston (see Resources section, later in this post) a walk through the codebase was included. The Docker image (also in the Resources section) has a running example of the script.

Image title


Older Approach: Deliver Pipelines Using Various Plugins

In the last few years, there have been numerous plugins in the Jenkins ecosystem that let you define and visualize pipelines. Some of the more popular ones are:

  • Jenkow, Build Flow and Job DSL plugins, to define pipelines
  • Build Pipeline plugin to visualize pipelines

The primary issue was the term “pipeline” wasn’t a native construct, so users ended up with multiple jobs and multiple plugins. We urge you to consult Kohsuke Kawaguchi and Andrew Phillips’ definitive article1 that walks through a number of the choices available to you when defining pipelines with this approach. 

Comparison of Workflow to Other Jenkins Plugins

Image title

Additional Resources

Orchestrating your delivery pipelines with Jenkins http://www.infoq.com/articles/orch-pipelines-jenkins

http://www.cloudbees.com/event/juc/2014/san-francisco

https://www.cloudbees.com/event/topic/workflow-jenkins

https://github.com/jenkinsci/pipeline-plugin

https://www.youtube.com/watch?v=tZygoTlW6YE

https://github.com/jenkinsci/pipeline-plugin/tree/master/demo

Interested in Kubernetes but unsure where to start? Check out this whitepaper, A Roundup of Managed Kubernetes Platforms from Codeship by Cloudbees, for an overview and comparison of Kubernetes platforms. 

Topics:
continuous delivery ,pipeline

Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}