The document describes the anatomy of a continuous delivery pipeline. It discusses what clients typically want from continuous delivery processes like faster releases, shorter cycles, and reduced time to market. It then outlines the key components of a continuous delivery pipeline including plan and measure, develop and build, deploy and test, release management, and monitor and optimize. Each stage of the pipeline is described in more detail including practices like trunk-based development, infrastructure as code, testing at all stages, and production readiness checkpoints. Sample workflows and a pipeline are presented.
1. Anatomy of A Continuous
Delivery Pipeline
Kamalika Majumder
Consultant & Director
Cloudkata® By Staxa LLP
2. What they need
Fast Sellers
Best Sellers
Quality Assurance
Security
Shorter Release
Cycles
Continuous
Integration
What they want
3. What I hear from most of my clients?
We have all the DevOps tools but still we are not delivering fast enough ?
Too much lead time to go from UAT to production.
We have been doing CI/CD for years , why cant we release when we want to ?
Despite automated build and deploy why does it takes so long to release ?
Why do we still see production issues ?
How can we reduce time to market ?
4. One stop station for application lifecycle management and
continuous delivery of quality products
Customers
Business Owners
Operations &
Production
Plan & Measure
Develop & Build
Monitor & Optimize
Deploy & Test
Release Management
CD Lifecycle
5. Back to Basics
“Continuous Delivery is a software
development discipline where you build
software in such a way that the software can
be released to production at any time.”
- Martin Fowler
Ability to get changes of all types
Into the hands of
users, safely and quickly in
a sustainable way &
Ensuring our code is always in a
deployable state
ref: https://continuousdelivery.com/
Cycle of Five
6. Develop Build Test Deploy Release
Everything is Version Controlled
Trunk Based Development
Every Developer must commit to trunk/master at
least once on a daily basis
MRs/PRs are peer review methods, not approval
mechanisms
Hide unfinished code with feature toggles
Trunk is always in a releasable stage
Never check in on a broken trunk.
7. Think beyond localhost
Build once deploy anywhere
Centralized package store
Semantic Versioning for all packages –
Apps, Configs, DB scripts etc.
CI Pipeline for build, package, publish,
version upgrades and build promotion.
Develop Build Test Deploy Release
Ref: https://medium.com/@dwdraju/how-it-works-in-my-machine-turns-it-works-in-my-
container-1b9a340ca43d
8. Test Driven Development
When you Fail Fast and fail early you can
fix early.
Cover maximum on unit level
Test Automation at every level
Continuous Integration and Reporting
for fast ,useful feedback
Parallel test pipelines.
Develop Build Test Deploy Release
70%
10%
9%
6%
4%
Security tests
Performance
tests
1-5%
5-15%
80-90%
9. Develop Build Test Deploy Release
Version Controlled Infrastructure As Code
One Design Multiple Implementations
Configuration Management - model server
configs, relationships with other servers,
packages in code.
Testing Infrastructure Code
Scalable Environment On Demand
Immutable Infrastructure.
Zero Downtime Deployments
10. Role Based Access Control for prod
deployment pipeline
End to End traceability - Code to
Customers
Production Readiness Checkpoint
Robust Monitoring, Logging and Alerting
Always have a plan B
Develop Build Test Deploy Release
13. Closing Note
Write to Me : kamalika@cloudkata.com
For More visit cloudkata.com and do share your thoughts.
For more updates connect with us at
@Cloudkata®,
Staxa LLP
@Cloudkata @cloudkata.staxa.llp
Notas do Editor
Every Business has two key Goals.
Ever wonder why they face with all these issues. Lets find out
In order to deliver fast and best they need….
As you can see there are a lot of moving components here and each of them are significant in their own space. In the interest of time and to understand the anatomy I would like to go back to the basics of Continuous Delivery
Continuous Delivery. As martin says is a discipline,
Or a I like to call it Circle of 5
For Case Studies, Articles and Tutorials please visit:
https://www.cloudkata.com/
And Share your Feedback
For more updates on whats happening follow us:
@cloudkata.staxa.llp on Facebook
Tweet @cloudkata
Stay connected @Cloudkata®, Staxa LLP on LinkedIn