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
Continuous Deployment
Search
Conferences Box
March 16, 2012
Technology
1
96
Continuous Deployment
Conferences Box
March 16, 2012
Tweet
Share
More Decks by Conferences Box
See All by Conferences Box
Socket.IO in Chess Realtime Multiplayer Web Application
conferencesbox
2
330
Multiple dispatch
conferencesbox
1
54
JQuery UI Keynote
conferencesbox
1
89
Sensible Testing
conferencesbox
2
72
Redis Application Patterns in Rails
conferencesbox
1
120
Making the Web Faster
conferencesbox
2
74
Using Rails without Rails
conferencesbox
1
100
Stranger in These Parts
conferencesbox
1
53
One day of life in V8
conferencesbox
3
250
Other Decks in Technology
See All in Technology
20260222ねこIoTLT ねこIoTLTをふりかえる
poropinai1966
0
230
社内ワークショップで終わらせない 業務改善AIエージェント開発
lycorptech_jp
PRO
1
380
Interop Tokyo 2025 ShowNet Team Memberで学んだSRv6を基礎から丁寧に
miyukichi_ospf
0
210
論文検索を日本語でできるアプリを作ってみた
sailen2
0
120
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
360
三菱UFJ銀行におけるエンタープライズAI駆動開発のリアル / Enterprise AI_Driven Development at MUFG Bank: The Real Story
muit
10
19k
【Developers Summit 2026】Memory Is All You Need:コンテキストの「最適化」から「継続性」へ ~RAGを進化させるメモリエンジニアリングの最前線~
shisyu_gaku
5
780
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4k
プロダクト開発の品質を守るAIコードレビュー:事例に見る導入ポイント
moongift
PRO
1
500
Claude Codeと駆け抜ける 情報収集と実践録
sontixyou
1
1.1k
What's new in Go 1.26?
ciarana
2
240
「データとの対話」の現在地と未来
kobakou
0
790
Featured
See All Featured
Paper Plane (Part 1)
katiecoart
PRO
0
5k
How to make the Groovebox
asonas
2
2k
Raft: Consensus for Rubyists
vanstee
141
7.3k
Paper Plane
katiecoart
PRO
0
47k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
82
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
1
130
The Invisible Side of Design
smashingmag
302
51k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
220
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
140
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
220
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
340
Transcript
Continuous Deployment
Matt White @whitethunder922 github.com/whitethunder
What is meant by “Continuous Deployment?”
From Timothy Fitz: •Continuously integrate (commit early and often) •On
commit automatically run all tests •If the tests pass deploy to the cluster •If the deploy succeeds, repeat
How often do you deploy?
Our Journey to Continuous Deployment
Things We Needed • Simplified Release Process • Thorough Testing
• Continuous Integration • Monitoring All things we should have anyway
Simplified Release Process
Make Releases Less Like This
None
None
Thorough Testing • Not necessarily 100% test coverage • Tests
that do what your users do
Fast and Efficient Tests • Profiling • Don't disguise integration
tests as unit tests (isolate) • Avoid test duplication • Create fewer objects • Load dependencies as needed • Don't test/use Rails
Continuous Integration
CI Should Be Fast Previous CI Server: • Quad-Core AMD
Opteron(tm) Processor • 16GiB RAM • Rackspace Cloud instance • 30 minutes to run tests Current CI Server: • 16 Core Intel(R) Xeon(R) CPU 2.40GHz • 32GiB RAM • SSD • 7 minutes to run tests
Make Use of Multiple CPU Cores
parallel_tests
hydra
Monitoring • A user should not be the first one
to notify you that something broke • Something automatic should freak out when stuff breaks
None
New Relic
New Relic
Excuses • More releases would be more pain • Our
tests are insufficient • Our users/stakeholders won't be cool with it
rollout
Benefits • Waste is reduced • Fail fast • Encourages
working in smaller increments
Result
MOAR PONIES!!!11! Who couldn't use moar ponies??!!?
Questions? Matt White @whitethunder922 github.com/whitethunder