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
93
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
52
JQuery UI Keynote
conferencesbox
1
87
Sensible Testing
conferencesbox
2
70
Redis Application Patterns in Rails
conferencesbox
1
110
Making the Web Faster
conferencesbox
2
71
Using Rails without Rails
conferencesbox
1
100
Stranger in These Parts
conferencesbox
1
51
One day of life in V8
conferencesbox
3
250
Other Decks in Technology
See All in Technology
「AI駆動PO」を考えてみる - 作る速さから価値のスループットへ:検査・適応で未来を開発 / AI-driven product owner. scrummat2025
yosuke_nagai
4
590
後進育成のしくじり〜任せるスキルとリーダーシップの両立〜
matsu0228
7
2.4k
AIAgentの限界を超え、 現場を動かすWorkflowAgentの設計と実践
miyatakoji
0
130
いま注目しているデータエンジニアリングの論点
ikkimiyazaki
0
590
関係性が駆動するアジャイル──GPTに人格を与えたら、対話を通してふりかえりを習慣化できた話
mhlyc
0
130
about #74462 go/token#FileSet
tomtwinkle
1
310
社内お問い合わせBotの仕組みと学び
nish01
0
320
Large Vision Language Modelを用いた 文書画像データ化作業自動化の検証、運用 / shibuya_AI
sansan_randd
0
110
多様な事業ドメインのクリエイターへ 価値を届けるための営みについて
massyuu
0
110
「Verify with Wallet API」を アプリに導入するために
hinakko
1
230
DataOpsNight#8_Terragruntを用いたスケーラブルなSnowflakeインフラ管理
roki18d
1
340
実装で解き明かす並行処理の歴史
zozotech
PRO
1
320
Featured
See All Featured
Embracing the Ebb and Flow
colly
88
4.8k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.7k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Git: the NoSQL Database
bkeepers
PRO
431
66k
Fireside Chat
paigeccino
40
3.7k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
610
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Automating Front-end Workflow
addyosmani
1371
200k
Music & Morning Musume
bryan
46
6.8k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Optimizing for Happiness
mojombo
379
70k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.7k
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