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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Conferences Box
March 16, 2012
Technology
99
1
Share
Continuous Deployment
Conferences Box
March 16, 2012
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
55
JQuery UI Keynote
conferencesbox
1
89
Sensible Testing
conferencesbox
2
74
Redis Application Patterns in Rails
conferencesbox
1
120
Making the Web Faster
conferencesbox
2
77
Using Rails without Rails
conferencesbox
1
100
Stranger in These Parts
conferencesbox
1
54
One day of life in V8
conferencesbox
3
250
Other Decks in Technology
See All in Technology
会社紹介資料 / Sansan Company Profile
sansan33
PRO
16
410k
デシリアライゼーションを理解する / Inside Deserialization
tomzoh
0
190
Claude Teamプランの選定と、できること/できないこと
rfdnxbro
1
1.8k
マルチモーダル非構造データとの闘い
shibuiwilliam
2
310
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
4
14k
組織的なAI活用を阻む 最大のハードルは コンテキストデザインだった
ixbox
1
1.2k
AIドリブン開発の実践知 ― AI-DLC Unicorn Gym実施から見えた可能性と課題
mixi_engineers
PRO
0
120
Strands Agents × Amazon Bedrock AgentCoreで パーソナルAIエージェントを作ろう
yokomachi
2
260
2026年度新卒技術研修 サイバーエージェントのデータベース 活用事例とパフォーマンス調査入門
cyberagentdevelopers
PRO
5
6.6k
Kubernetes基盤における開発者体験 とセキュリティの両⽴ / Balancing developer experience and security in a Kubernetes-based environment
chmikata
0
220
サイバーフィジカル社会とは何か / What Is a Cyber-Physical Society?
ks91
PRO
0
160
DIPS2.0データに基づく森林管理における無人航空機の利用状況
naokimuroki
0
150
Featured
See All Featured
ラッコキーワード サービス紹介資料
rakko
1
2.9M
Statistics for Hackers
jakevdp
799
230k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
160
Paper Plane (Part 1)
katiecoart
PRO
0
6.4k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
96
Git: the NoSQL Database
bkeepers
PRO
432
67k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
480
Odyssey Design
rkendrick25
PRO
2
570
Measuring & Analyzing Core Web Vitals
bluesmoon
9
800
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
510
How GitHub (no longer) Works
holman
316
150k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
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