What is a continuous delivery (CD) pipeline?
When teams develop software, they need software tools to plan, document, version, measure, build, deploy and manage their software. Tools such as Atlassian’s Jira, Bamboo & Bitbucket, Open Source Git, SonarQube, Jenkins, Puppet, Chef, Ansible, App Dynamics, etc.
The pipeline is usually made up of these usually disconnected tools tied together to build and deploy software continuously. The core idea of Continuous Delivery is to create a repeatable, reliable and incrementally improving process for taking software from concept to customer. The goal of CD is to enable a constant flow of changes into production via an automated software production line. The Continuous Delivery pipeline is what makes it all happen.
A delivery pipeline consists of build automation, test automation, and deployment automation.
As you can see from the above picture there are several tools that can be chosen from to become part of your continuous delivery pipeline.
Continuous Delivery History
The software delivery pipeline came from the production line in manufacturing.
In 2001, the Agile Manifesto wrote “Our highest priority is to satisfy the customer through the early and continuous delivery of valuable software”
In 2010, Jez Humble wrote the Continuous Delivery book in which he took the concept and broke down the pieces of the pipeline and explained how each piece can be put together.
How can you quickly create one for your team?
Let’s say you are a small software company that would like to quickly get a Jira Cloud, Bitbucket Cloud, Bitbucket Pipelines SonarQube Cloud. Using these limited set of tools you can quickly setup your software delivery pipeline and with a few nifty scripts that can help your software be built and deployed automatically, every time there is a commit or a pull request.
Please reach out to us if you have any questions on the setup.
What is the best way to improve your Continuous Delivery Pipeline?
The best way to improve any system or process is to first inspect it, identify bottlenecks, fix and streamline and or automate it so that your team can have a repeatable, reliable and incrementally improving process for taking software from concept to customer.
Inspection of the process is not easy as the tools you choose might not from the same vendor and usually disconnected. A DevOps dashboard like “At a Glance” from Concepts and Beyond collects metadata from these tools and displays analytics on a single page, enabling teams to identify bottlenecks and fix issues either with the pipeline or their software. Watch a demo in the video below.
To experience the dashboard, you can download “At a Glance” Jira plugin from the Atlassian marketplace.