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
SFRuby Nov 2011 - Release Early and Release Often
Search
Andy Delcambre
November 17, 2011
Programming
2
77
SFRuby Nov 2011 - Release Early and Release Often
Andy Delcambre
November 17, 2011
Tweet
Share
More Decks by Andy Delcambre
See All by Andy Delcambre
Git and GitHub at YAPC:Asia
adelcambre
1
3.3k
Git, GitHub, Etc
adelcambre
3
190
Systems Programming - SoCoded 2013
adelcambre
2
160
Ruby Systems Programming
adelcambre
4
1k
Debugging Production Service Oriented Systems
adelcambre
3
420
Ruby, Rails and Engine Yard - Úll
adelcambre
1
240
Release early and Release often
adelcambre
2
410
Other Decks in Programming
See All in Programming
見た目から始める生産性向上
ikumatadokoro
10
1.3k
Node.js v22 で変わること
yosuke_furukawa
PRO
11
3.9k
Ruby GitHub Packages
bkuhlmann
0
640
From Spring Boot 2 to Spring Boot 3 with Java 21 and Jakarta EE
ivargrimstad
0
500
MetricKitで予期せぬ終了を検知する話 / Detect unexpected termination with MetricKit
nekowen
1
200
業務ツールとして使うPostman
msys75
0
100
Introducing Kotlin Multiplatform in an existing mobile app - Workshop Edition | AndroidMakers Paris
prof18
0
150
PostmanでAPIの動作確認が楽になった話
h455h1
0
180
スクラムガイドのスプリントレトロスペクティブを改めて読みかえしてみた / Re-reading the Sprint Retrospective Section in the Scrum Guide
mackey0225
3
480
Amazon SQSコンシューマー疎結合への旅 - 出張! #DevelopersIO IT技術ブログの中の人が語る勉強会 #3
quiver
0
300
Three ways to use AI on Android: The Good, the Bad and the Ugly
marxallski
0
110
Milestoner
bkuhlmann
1
410
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
13
8.3k
What's in a price? How to price your products and services
michaelherold
238
11k
What’s in a name? Adding method to the madness
productmarketing
PRO
17
2.7k
How GitHub (no longer) Works
holman
305
140k
Faster Mobile Websites
deanohume
300
30k
Designing with Data
zakiwarfel
96
4.8k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
41
4.4k
VelocityConf: Rendering Performance Case Studies
addyosmani
321
23k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
8
1.3k
How to train your dragon (web standard)
notwaldorf
75
5.2k
Six Lessons from altMBA
skipperchong
22
3k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Transcript
RELEASE EARLY & Andy Delcambre Engine Yard RELEASE OFTEN
@adelcambre
None
STARTING A NEW TASK
None
None
git checkout -b U-666
git commit -m “[U-666] add unicorns”
None
............................. ..*......**.................. ............................. ...................... Finished in 10.809554 seconds 109 examples,
0 failures, 3 pending
None
None
EyBot
None
None
None
None
None
CONTINUOUS INTEGRATION
MASON
None
$ git checkout master $ git merge U-666 $ git
push origin master
MARK TICKET AS “MERGED”
AUTO DEPLOY TO EDGE
None
531 DEPLOYS IN OCTOBER
~ 20 per week day
2-9 Production Deploys per Day
EyBot: release awsm production
Ensure master is green
Tag the release
Assign all merged tickets to the version
Push tag to the deploy branch
Production automatically deploys from the deploy branch
Mark all tickets in this release as resolved
Send Notifications
Airbrake
New Relic
Email
None
None
The actual deploy
Fairly Standard Deploy
current/ releases/ shared/
Unicorn
Zero Downtime Migrations
No Magic, Just a technique
Adding a column
Add a migration to add the column
Ship code that needs the new column
Deploy the code Restart the servers Then run migrations
A work in progress
Thanks!
Questions? twitter.com/adelcambre engineyard.com We’re hiring!