Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Enabling continuous delivery for your webapp
Search
Ranjib Dey
April 18, 2012
Programming
240
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Enabling continuous delivery for your webapp
An experience report from various client gigs while enabling CD
Ranjib Dey
April 18, 2012
More Decks by Ranjib Dey
See All by Ranjib Dey
Consul @ PagerDuty
ranjibd
1
250
Extending CI/CD in Operations Using Chef & LXC
ranjibd
1
410
Adopting Test Driven Development in Operations
ranjibd
4
1.6k
Chef-LXC - Building and deploying custom containers
ranjibd
2
1.8k
How to mock a mocking bird - testing dynamic infrastructure
ranjibd
4
1.3k
A short introduction to LXC
ranjibd
1
420
Attaining Resiliency - Culture , Tools and Practices
ranjibd
2
1.3k
Automated Infrastructure Testing
ranjibd
0
260
Other Decks in Programming
See All in Programming
モデルのリファクタリングが難しいと思ったら、そもそも複雑だったのはビジネス仕様だった ? / is-the-business-domain-the-real-complexity
hatsu38
0
390
C#の現在地 進化の歴史と、AI時代の.NET Everywhere
neuecc
4
3.5k
App Storeの外へ──日本のiOSサイドローディング入門 for iOSDC Japan 2026
yuukiw00w
0
240
巨大モノリシックアプリ モダン化大作戦
ktcryomm
1
1.1k
Agents on Rails - Rails at Scale 2026
irinanazarova
0
170
iOS 27でニュースアプリはどう変わる!? 〜日経電子版の新機能対応と、開発事例から〜
lynnswap
1
11k
MVNOの申込からeSIM開通までをiOSアプリでつなぐ- 本人確認・MNP・通信事業者基盤をまたぐ実装
satotakeshi
0
460
Are APIs Still Relevant in the AI Era?
soyuka
0
300
仕様駆動開発による爆速プロダクト開発 / Bakusoku Spec Driven Development
kobakei
0
130
速習iPhone Duo対応
yuukiw00w
1
710
SONY CISC-NEWS NWS-1750 + NWB-225 フレームバッファの NetBSD/news68k ドライバ実装 / OSC2026Hiroshima
tsutsui
0
140
Omarchy Tokyo やると聞いて UMPC 買ってセットアップしてきた
mtsmfm
0
160
Featured
See All Featured
Darren the Foodie - Storyboard
khoart
PRO
4
3.9k
Designing Powerful Visuals for Engaging Learning
tmiket
1
580
Exploring anti-patterns in Rails
aemeredith
4
510
KATA
mclloyd
PRO
35
15k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
RailsConf 2023
tenderlove
30
1.6k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
420
GitHub's CSS Performance
jonrohan
1033
470k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
540
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
830
How to Ace a Technical Interview
jacobian
281
24k
Technical Leadership for Architectural Decision Making
baasie
3
580
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