let's release it - an intro to continuous delivery
DESCRIPTION
Imagine being able to ship new features with confidence. Imagine decoupling the process of putting new code in production from the decision to release new features to users. Push to production every day and release features when you’re ready. Continuous Delivery describes a set of practices that can make this happen. Rouan gives you an introduction to the concept of Continuous Delivery and some of the main practices that underpin it. He talks about automated testing, deployment and version control. He explains what it means for your approach to user stories and your definition of done and about the difference it will make in the life of your product owner. He’ll cover the concept of building quality into the delivery process and the power this gives you.TRANSCRIPT
![Page 1: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/1.jpg)
a n i n t r o t o c o n t i n u o u s d e l i v e r y
LET’S RELEASE IT
Rouan Wilsenach @rouanw
thoughtworks.com
![Page 2: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/2.jpg)
THE LAST MILEDoes this look familiar?
2
![Page 3: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/3.jpg)
Analysis & Design
Development
Test & Showcase
Release & Operations
‘Agile’ team
Centralised QA IT Operations
Integration & QA
Customer
The ‘last mile’Iteration 0 - 1 - 2 - 3 - n
3
![Page 4: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/4.jpg)
4
Test & Showcase
Delivery team
Customer
Constant flow of new features into production
![Page 5: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/5.jpg)
PRINCIPLES OF CD
5
![Page 6: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/6.jpg)
6
Decouple release from deployment
![Page 7: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/7.jpg)
7
Done means released
![Page 8: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/8.jpg)
8
Small releases
![Page 9: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/9.jpg)
9
Build quality in
![Page 10: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/10.jpg)
10
If it hurts, do it more often
![Page 11: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/11.jpg)
11
Automate everything
![Page 12: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/12.jpg)
BENEFITS OF CD
12
![Page 13: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/13.jpg)
13
Clarity
![Page 14: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/14.jpg)
14
Confidence
![Page 15: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/15.jpg)
15
Less stress
![Page 16: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/16.jpg)
SHOW ME HOWBlah blah blah. How do we actually do this?
16
![Page 17: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/17.jpg)
AUTOMATE EVERYTHINGThe machinery to put code in production. All the time.
17
![Page 18: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/18.jpg)
18
Automated testing
![Page 19: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/19.jpg)
19
Production-like environments
![Page 20: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/20.jpg)
20
Automated deployments
![Page 21: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/21.jpg)
21
Automated infrastructure
![Page 22: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/22.jpg)
BUILD PIPELINEThe production gauntlet
22
![Page 23: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/23.jpg)
23
![Page 24: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/24.jpg)
24
Trigger the pipe on every change
![Page 25: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/25.jpg)
25
Fast feedback
![Page 26: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/26.jpg)
26
Build artefact
![Page 27: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/27.jpg)
27
The go button
![Page 28: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/28.jpg)
TRUNK BASED DEVELOPMENTHow to code when everything is in production
28
![Page 29: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/29.jpg)
29
Put everyone’s changes together all the time
![Page 30: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/30.jpg)
30
Small changes
![Page 31: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/31.jpg)
31
User stories
![Page 32: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/32.jpg)
32
Keep out of reach of users
![Page 33: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/33.jpg)
33
Feature toggles
![Page 34: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/34.jpg)
34
Toggling tips
not too many short lived talk about them
![Page 35: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/35.jpg)
35
Branch by abstraction
![Page 36: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/36.jpg)
WHAT GOES INThe other side of the pipe
36
![Page 37: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/37.jpg)
37
Release decisions
![Page 38: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/38.jpg)
38
Use feedback
![Page 39: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/39.jpg)
39
Measure cycle time
![Page 40: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/40.jpg)
RECAPOnce more with feeling
40
![Page 41: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/41.jpg)
41
The last mile
Principles of CDBenefits
automate everything
build pipelinetrunk based dev
what goes in
How?
![Page 42: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/42.jpg)
SOME RESOURCES
Continuous Integration:
• www.martinfowler.com/articles/continuousIntegration.html
• http://martinfowler.com/bliki/FeatureBranch.html
Trunk based development:
• http://martinfowler.com/bliki/FeatureToggle.html
• http://martinfowler.com/bliki/BranchByAbstraction.html
• http://continuousdelivery.com/wp-content/uploads/2011/05/branch_by_abstraction.png
Continuous Delivery
• http://www.thoughtworks.com/continuous-delivery
• http://martinfowler.com/bliki/ContinuousDelivery.html
• http://go.cd
42
![Page 43: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/43.jpg)
SOME RESOURCES
Jez Humble (@jezhumble)
• continuousdelivery.com
• CD Book: http://martinfowler.com/books/continuousDelivery.html
• Video on adopting CD: http://www.infoq.com/presentations/Adopting-Continuous-Delivery
43
![Page 44: Let's release it - an intro to Continuous Delivery](https://reader034.vdocument.in/reader034/viewer/2022051817/547e7d845906b5ce718b4693/html5/thumbnails/44.jpg)
a n i n t r o t o c o n t i n u o u s d e l i v e r y
LET’S RELEASE IT
Rouan Wilsenach @rouanw
thoughtworks.com