Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Enabling continuous delivery for your webapp
Search
Ranjib Dey
April 18, 2012
Programming
2
190
Enabling continuous delivery for your webapp
An experience report from various client gigs while enabling CD
Ranjib Dey
April 18, 2012
Tweet
Share
More Decks by Ranjib Dey
See All by Ranjib Dey
Consul @ PagerDuty
ranjibd
1
210
Extending CI/CD in Operations Using Chef & LXC
ranjibd
1
360
Adopting Test Driven Development in Operations
ranjibd
4
1.6k
Chef-LXC - Building and deploying custom containers
ranjibd
2
1.7k
How to mock a mocking bird - testing dynamic infrastructure
ranjibd
4
1.3k
A short introduction to LXC
ranjibd
1
380
Attaining Resiliency - Culture , Tools and Practices
ranjibd
2
1.3k
Automated Infrastructure Testing
ranjibd
0
220
Other Decks in Programming
See All in Programming
When Dependencies Fail: Building Antifragile Applications in a Fragile World
selcukusta
0
110
AkarengaLT vol.38
hashimoto_kei
1
110
開発生産性を上げるための生成AI活用術
starfish719
3
1.6k
AIと人間の共創開発!OSSで試行錯誤した開発スタイル
mae616
2
770
コード生成なしでモック処理を実現!ovechkin-dm/mockioで学ぶメタプログラミング
qualiarts
0
240
TFLintカスタムプラグインで始める Terraformコード品質管理
bells17
2
350
iOSでSVG画像を扱う
kishikawakatsumi
0
150
CSC305 Lecture 10
javiergs
PRO
0
220
実践Claude Code:20の失敗から学ぶAIペアプログラミング
takedatakashi
16
6.5k
チームの境界をブチ抜いていけ
tokai235
0
210
Google Opalで使える37のライブラリ
mickey_kubo
3
130
AI駆動で0→1をやって見えた光と伸びしろ
passion0102
1
740
Featured
See All Featured
Navigating Team Friction
lara
190
15k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Balancing Empowerment & Direction
lara
5
700
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.7k
The Pragmatic Product Professional
lauravandoore
36
7k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Speed Design
sergeychernyshev
32
1.2k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.7k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Transcript
Enabling Continuous Delivery for your WebApp Ranjib Dey, ThoughtWorks @RanjibDey
http://ranjib.posterous.com
Can you release your latest green build on demand at
the push of a button while relaxing on the beach in Goa?
Why?
Time to market
Affordable risks
No more work of art
Let business decide
Myths
Upfront design
Legacy code running in production
My stack does not support
My Domain does not require
Principles
Component based architecture
Deployment pipeline
Infrastructure as code
Automate as much as possible
Bring the pain froward
Extend CI
Execution
Automated testing
Feature branching
Branch by abstraction
Team organization
Have customized release strategies
Blue – Green deployments
Canary releases
Dark launching
Mitigating DB issues
Data is persistent
Not all changes can be rolled back
Don’t integrate late
Version control db migration scripts
Embrace DevOps
Adopt a configuration management tool
Test infrastructures with monitoring tools
Virtualization and Cloud helps
Phoenix servers
None
None
Maintaining CD projects
Collaboration is key
None
Enable faster smaller feed back loops
Set up comprehensive dashboard
None
None
None
Churn out cross cutting analytics
Exercise MVP principle at component level
Questions? Suggestion? Violent disagreements?
Thank you