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
53
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
52
One day of life in V8
conferencesbox
3
250
Other Decks in Technology
See All in Technology
Oracle Autonomous AI Database:サービス概要のご紹介
oracle4engineer
PRO
2
15k
Introduction to Bill One Development Engineer
sansan33
PRO
0
300
いまからでも遅くない!SSL/TLS証明書超入門(It's not too late to start! SSL/TLS Certificates: The Absolute Beginner's Guide)
norimuraz
0
300
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3k
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
5
43k
「改善」ってこれでいいんだっけ?
ukigmo_hiro
0
380
なぜAWSを活かしきれないのか?技術と組織への処方箋
nrinetcom
PRO
5
1k
フレームワークを意識させないワークショップづくり
keigosuda
0
220
OAuthからOIDCへ ― 認可の仕組みが認証に拡張されるまで
yamatai1212
0
140
Findy Team+ QAチーム これからのチャレンジ!
findy_eventslides
0
480
エンタメとAIのための3Dパラレルワールド構築(GPU UNITE 2025 特別講演)
pfn
PRO
0
590
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.8k
Featured
See All Featured
The Language of Interfaces
destraynor
162
25k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Raft: Consensus for Rubyists
vanstee
140
7.1k
Java REST API Framework Comparison - PWX 2021
mraible
34
8.9k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
We Have a Design System, Now What?
morganepeng
53
7.8k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
920
Mobile First: as difficult as doing things right
swwweet
225
10k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Why Our Code Smells
bkeepers
PRO
340
57k
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