SlideShare uma empresa Scribd logo
1 de 38
@kmugragehttps://gocd.org/
IT’S NOT CONTINUOUS DELIVERY
If you can’t deploy to production right now
@kmugragehttps://gocd.org/
WhoAm I?
Ken Mugrage
ThoughtWorks Technology Evangelist
DevOpsDays Core Organizer
@kmugrage
http://ken.wtf
@kmugragehttps://gocd.org/
– Me
“DevOps: A culture where people, regardless of
title or background, work together to imagine,
develop, deploy and operate a system.”
@kmugragehttps://gocd.org/
Jez Humble - https://continuousdelivery.com/
“Continuous Delivery is the ability to get changes of all types—including
new features, configuration changes, bug fixes and experiments—into
production, or into the hands of users, safely and quickly in
a sustainable way.”
@kmugragehttps://gocd.org/
WHY THIS TALK?
@kmugragehttps://gocd.org/
There is no try
@kmugragehttps://gocd.org/
Why continuous
delivery?
We follow these principles:
Our highest priority is to satisfy the customer
through early and continuous delivery
of valuable software.
Welcome changing requirements, even late in
development. Agile processes harness change for
the customer's competitive advantage.
Deliver working software frequently, from a
couple of weeks to a couple of months, with a
preference to the shorter timescale.
@kmugragehttps://gocd.org/
Partially“done” might still be useful
@kmugragehttps://gocd.org/
Respond to security issues
At the time of disclosure, some 17% (around
half a million) of the Internet's secure web
servers certified by trusted authorities were
believed to be vulnerable to the attack, allowing
theft of the servers' private keys and users'
session cookies and passwords.
https://en.wikipedia.org/wiki/Heartbleed
@kmugragehttps://gocd.org/
Knight Capital
To be continued….
@kmugragehttps://gocd.org/
CONTINUOUS INTEGRATION
A pre-requisite to Continuous Delivery
@kmugragehttps://gocd.org/
The ThoughtWorks tech radar recently
recommended putting a hold on the tech team
anti-pattern, CI Theatre. CI Theatre describes the
illusion of practicing continuous integration (CI)
while not really practicing it.
https://www.gocd.org/2017/05/16/its-not-CI-its-CI-theatre/
@kmugragehttps://gocd.org/
In our study only 10% of participants
acknowledged that having a CI server
was not the same as practicing CI.
https://www.gocd.org/2017/05/16/its-not-CI-its-CI-theatre/
@kmugragehttps://gocd.org/
Continuous Integration
Everyone pushes their code into trunk / master (not feature branches) on a
daily basis
Every commit triggers your tests
When the build is broken, it is typically fixed within 10 minutes
@kmugragehttps://gocd.org/
Feature Branching
https://martinfowler.com/bliki/FeatureBranch.html
@kmugragehttps://gocd.org/
Feature Branching
https://martinfowler.com/bliki/FeatureBranch.html
@kmugragehttps://gocd.org/
Feature Branching
https://martinfowler.com/bliki/FeatureBranch.html
@kmugragehttps://gocd.org/
PipelinesYou Should Be Including
@kmugragehttps://gocd.org/
Security testing
Test before you commit
Static Application Security Testing (SAST)
Dynamic Application Security Testing (DAST)
@kmugragehttps://gocd.org/
Performance testing
Load testing
Stress testing
Soak testing
Spike testing
@kmugragehttps://gocd.org/
Unit	Test
Functional	
Test
Load	Test
Staging Production
Spike	Test
Stress	Test
Soak	Test
Run as much as
possible in parallel
@kmugragehttps://gocd.org/
Run as much as possible in parallel
@kmugragehttps://gocd.org/
You should decide
the order, not
your tool
@kmugragehttps://gocd.org/
Deploying incomplete work
How to deliver faster than you can finish a feature
@kmugragehttps://gocd.org/
Feature Toggles
https://martinfowler.com/bliki/FeatureToggle.html
@kmugragehttps://gocd.org/
Feature Toggles
Pete Hodgson - http://martinfowler.com/articles/feature-toggles.html
@kmugragehttps://gocd.org/
Feature Toggles
Pete Hodgson - http://martinfowler.com/articles/feature-toggles.html
@kmugragehttps://gocd.org/
Branch by Abstraction
https://continuousdelivery.com/2011/05/make-large-scale-changes-incrementally-with-branch-by-abstraction/
Consumer Consumer
Component
@kmugragehttps://gocd.org/
Branch by Abstraction
https://continuousdelivery.com/2011/05/make-large-scale-changes-incrementally-with-branch-by-abstraction/
Consumer Consumer
Component
Abstraction
@kmugragehttps://gocd.org/
Branch by Abstraction
https://continuousdelivery.com/2011/05/make-large-scale-changes-incrementally-with-branch-by-abstraction/
Consumer Consumer
Old
Abstraction
New
@kmugragehttps://gocd.org/
Managing risk
@kmugragehttps://gocd.org/
Optimize for recovery
Mean time between failures (MTBF) is the predicted elapsed time between
inherent failures of a system during operation.
Mean Time To Repair (MTTR) is a basic measure of the maintainability
of repairable items. It represents the average time required to repair a failed
component or device.
https://en.wikipedia.org/wiki/Mean_time_to_repair
https://en.wikipedia.org/wiki/Mean_time_between_failures
@kmugragehttps://gocd.org/
Deployment patterns
Canary release
A technique to reduce the risk of introducing a new software version in production by slowly rolling
out the change to a small subset of users before rolling it out to the entire infrastructure and making
it available to everybody.
Dark launching
The practice of deploying the very first version of a service into its production environment, well
before release, so that you can soak test it and find any bugs before you make its functionality
available to users.
http://martinfowler.com/bliki/CanaryRelease.html
http://www.informit.com/articles/article.aspx?p=1833567&seqNum=2
@kmugragehttps://gocd.org/
Feedback loops
Create useful logging for everything
Run (some of) your tests against production
Ensure alerts are useful as well
@kmugragehttps://gocd.org/
Knight Capital
On August 1, 2012, Knight Capital deployed untested software to a production
environment which contained an obsolete function.The incident happened due to
a technician forgetting to copy the new Retail Liquidity Program (RLP)….
…sent millions of child orders, resulting in 4 million executions in 154 stocks for
more than 397 million shares in approximately 45 minutes.
Knight Capital took a pre-tax loss of $440,000,000
@kmugragehttps://gocd.org/
Summary
It’s not Continuous Delivery if you can’t deploy right now
Practice good CI habits
Use things like feature toggles to deploy incomplete work
@kmugragehttps://gocd.org/
THANKYOU
To learn more about ThoughtWorks Products

http://www.thoughtworks.com/products/
Ken Mugrage
@kmugrage

Mais conteúdo relacionado

Mais procurados

DevOps - Today Better than Yesterday
DevOps - Today Better than YesterdayDevOps - Today Better than Yesterday
DevOps - Today Better than Yesterday
Eric Lau
 

Mais procurados (20)

DevOps - Mindset first, Tools second.
DevOps - Mindset first, Tools second.DevOps - Mindset first, Tools second.
DevOps - Mindset first, Tools second.
 
Application Security Epistemology in a Continuous Delivery World
Application Security Epistemology in a Continuous Delivery WorldApplication Security Epistemology in a Continuous Delivery World
Application Security Epistemology in a Continuous Delivery World
 
Walk This Way - An Introduction to DevOps
Walk This Way - An Introduction to DevOpsWalk This Way - An Introduction to DevOps
Walk This Way - An Introduction to DevOps
 
DevOps Culture
DevOps CultureDevOps Culture
DevOps Culture
 
What is DevOps?
What is DevOps?What is DevOps?
What is DevOps?
 
Production-Ready Node.js
Production-Ready Node.jsProduction-Ready Node.js
Production-Ready Node.js
 
DevOpsGuys Performance Testing with APM Tools workshop
DevOpsGuys Performance Testing with APM Tools workshopDevOpsGuys Performance Testing with APM Tools workshop
DevOpsGuys Performance Testing with APM Tools workshop
 
DevOpsGuys - DevOps Automation - The Good, The Bad and The Ugly
DevOpsGuys - DevOps Automation - The Good, The Bad and The UglyDevOpsGuys - DevOps Automation - The Good, The Bad and The Ugly
DevOpsGuys - DevOps Automation - The Good, The Bad and The Ugly
 
DevOps game marshmallow challenge
DevOps game marshmallow challengeDevOps game marshmallow challenge
DevOps game marshmallow challenge
 
DevOpsGuys FutureDecoded 2016 - is DevOps the Answer
DevOpsGuys FutureDecoded 2016 - is DevOps the AnswerDevOpsGuys FutureDecoded 2016 - is DevOps the Answer
DevOpsGuys FutureDecoded 2016 - is DevOps the Answer
 
DevOps - Today Better than Yesterday
DevOps - Today Better than YesterdayDevOps - Today Better than Yesterday
DevOps - Today Better than Yesterday
 
From devOps to front end Ops, test first
From devOps to front end Ops, test firstFrom devOps to front end Ops, test first
From devOps to front end Ops, test first
 
Blame DevOps: Shifting Left the Wrong Way
Blame DevOps: Shifting Left the Wrong WayBlame DevOps: Shifting Left the Wrong Way
Blame DevOps: Shifting Left the Wrong Way
 
Bringing Change to Life | YOW 2016 | Melbourne, Brisbane, Sydney - Australia
Bringing Change to Life | YOW 2016 | Melbourne, Brisbane, Sydney - AustraliaBringing Change to Life | YOW 2016 | Melbourne, Brisbane, Sydney - Australia
Bringing Change to Life | YOW 2016 | Melbourne, Brisbane, Sydney - Australia
 
CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)
CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)
CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)
 
JavaZone 2016 - The DevOps disaster
JavaZone 2016 - The DevOps disasterJavaZone 2016 - The DevOps disaster
JavaZone 2016 - The DevOps disaster
 
DevOps Utrecht - The DevOps Disaster
DevOps Utrecht - The DevOps DisasterDevOps Utrecht - The DevOps Disaster
DevOps Utrecht - The DevOps Disaster
 
Principles of Continuous Delivery and DevOps
Principles of Continuous Delivery and DevOpsPrinciples of Continuous Delivery and DevOps
Principles of Continuous Delivery and DevOps
 
Modern approaches to product development: the challenge of distributed teams
Modern approaches to product development: the challenge of distributed teamsModern approaches to product development: the challenge of distributed teams
Modern approaches to product development: the challenge of distributed teams
 
Flusso Continuous Integration & Continuous Delivery
Flusso Continuous Integration & Continuous DeliveryFlusso Continuous Integration & Continuous Delivery
Flusso Continuous Integration & Continuous Delivery
 

Semelhante a It's Not Continuous Delivery If You Can't Deploy Right Now

Why we don’t use the Term DevOps: the Journey to a Product Mindset - Destinat...
Why we don’t use the Term DevOps: the Journey to a Product Mindset - Destinat...Why we don’t use the Term DevOps: the Journey to a Product Mindset - Destinat...
Why we don’t use the Term DevOps: the Journey to a Product Mindset - Destinat...
Henning Jacobs
 
Cloud-Native Fundamentals: Accelerating Development with Continuous Integration
Cloud-Native Fundamentals: Accelerating Development with Continuous IntegrationCloud-Native Fundamentals: Accelerating Development with Continuous Integration
Cloud-Native Fundamentals: Accelerating Development with Continuous Integration
VMware Tanzu
 

Semelhante a It's Not Continuous Delivery If You Can't Deploy Right Now (20)

DCVCS using GIT
DCVCS using GITDCVCS using GIT
DCVCS using GIT
 
Automating the Quality
Automating the QualityAutomating the Quality
Automating the Quality
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository world
 
Next Level DevOps Implementation with GitOps
Next Level DevOps Implementation with GitOpsNext Level DevOps Implementation with GitOps
Next Level DevOps Implementation with GitOps
 
Why we don’t use the Term DevOps: the Journey to a Product Mindset - Destinat...
Why we don’t use the Term DevOps: the Journey to a Product Mindset - Destinat...Why we don’t use the Term DevOps: the Journey to a Product Mindset - Destinat...
Why we don’t use the Term DevOps: the Journey to a Product Mindset - Destinat...
 
Repertoire of contributions hacktoberfest
Repertoire of contributions hacktoberfestRepertoire of contributions hacktoberfest
Repertoire of contributions hacktoberfest
 
Cloud-Native Fundamentals: Accelerating Development with Continuous Integration
Cloud-Native Fundamentals: Accelerating Development with Continuous IntegrationCloud-Native Fundamentals: Accelerating Development with Continuous Integration
Cloud-Native Fundamentals: Accelerating Development with Continuous Integration
 
Lean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partnerLean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partner
 
From Duke of DevOps to Queen of Chaos - Api days 2018
From Duke of DevOps to Queen of Chaos - Api days 2018From Duke of DevOps to Queen of Chaos - Api days 2018
From Duke of DevOps to Queen of Chaos - Api days 2018
 
DevOps & DevEx
DevOps & DevExDevOps & DevEx
DevOps & DevEx
 
Continuous integration with Docker
Continuous integration with DockerContinuous integration with Docker
Continuous integration with Docker
 
Dave Karow, Split. Powering Progressive Delivery With Data
Dave Karow, Split. Powering Progressive Delivery With DataDave Karow, Split. Powering Progressive Delivery With Data
Dave Karow, Split. Powering Progressive Delivery With Data
 
apidays LIVE New York - Navigating the Sea of Javascript Tools to Discover Sc...
apidays LIVE New York - Navigating the Sea of Javascript Tools to Discover Sc...apidays LIVE New York - Navigating the Sea of Javascript Tools to Discover Sc...
apidays LIVE New York - Navigating the Sea of Javascript Tools to Discover Sc...
 
DevOps Pipelines and Metrics Driven Feedback Loops
DevOps Pipelines and Metrics Driven Feedback LoopsDevOps Pipelines and Metrics Driven Feedback Loops
DevOps Pipelines and Metrics Driven Feedback Loops
 
OSGeo: projects, incubation and infrastructure
OSGeo: projects, incubation and infrastructureOSGeo: projects, incubation and infrastructure
OSGeo: projects, incubation and infrastructure
 
ML-Ops: Philosophy, Best-Practices and Tools
ML-Ops:Philosophy, Best-Practices and ToolsML-Ops:Philosophy, Best-Practices and Tools
ML-Ops: Philosophy, Best-Practices and Tools
 
Alexey Kupriyanenko "Release Early, Often, Stable"
Alexey Kupriyanenko "Release Early, Often, Stable"Alexey Kupriyanenko "Release Early, Often, Stable"
Alexey Kupriyanenko "Release Early, Often, Stable"
 
Do's and don'ts for continuous delivery
Do's and don'ts for continuous deliveryDo's and don'ts for continuous delivery
Do's and don'ts for continuous delivery
 
Advanced deployment scenarios (netcoreconf)
Advanced deployment scenarios (netcoreconf)Advanced deployment scenarios (netcoreconf)
Advanced deployment scenarios (netcoreconf)
 
Golang 101 for IT-Pros - Cisco Live Orlando 2018 - DEVNET-1808
Golang 101 for IT-Pros - Cisco Live Orlando 2018 - DEVNET-1808Golang 101 for IT-Pros - Cisco Live Orlando 2018 - DEVNET-1808
Golang 101 for IT-Pros - Cisco Live Orlando 2018 - DEVNET-1808
 

Último

AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
masabamasaba
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Último (20)

Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
Generic or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsGeneric or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisions
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 
%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban
 
SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions Presentation
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 

It's Not Continuous Delivery If You Can't Deploy Right Now