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
93
2
Share
SFRuby Nov 2011 - Release Early and Release Often
Andy Delcambre
November 17, 2011
More Decks by Andy Delcambre
See All by Andy Delcambre
Git and GitHub at YAPC:Asia
adelcambre
1
3.4k
Git, GitHub, Etc
adelcambre
3
250
Systems Programming - SoCoded 2013
adelcambre
2
190
Ruby Systems Programming
adelcambre
4
1.2k
Debugging Production Service Oriented Systems
adelcambre
3
440
Ruby, Rails and Engine Yard - Úll
adelcambre
1
340
Release early and Release often
adelcambre
2
540
Other Decks in Programming
See All in Programming
ファインチューニングせずメインコンペを解く方法
pokutuna
0
300
Linux Kernelの1文字のミスで 権限昇格ができた話
rqda
0
2.3k
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
840
Offline should be the norm: building local-first apps with CRDTs & Kotlin Multiplatform
renaudmathieu
0
190
実践ハーネスエンジニアリング #MOSHTech
kajitack
7
6.2k
夢の無限スパゲッティ製造機 -実装篇- #phpstudy
o0h
PRO
0
200
UIの境界線をデザインする | React Tokyo #15 メイントーク
sasagar
1
170
Don't Prompt Harder, Structure Better
kitasuke
0
670
Make GenAI Production-Ready with Kubernetes Patterns
bibryam
0
110
TiDBのアーキテクチャから学ぶ分散システム入門 〜MySQL互換のNewSQLは何を解決するのか〜 / tidb-architecture-study
dznbk
1
150
メッセージングを利用して時間的結合を分離しよう #phperkaigi
kajitack
3
580
「効かない!」依存性注入(DI)を活用したAPI Platformのエラーハンドリング奮闘記
mkmk884
0
320
Featured
See All Featured
Discover your Explorer Soul
emna__ayadi
2
1.1k
A Soul's Torment
seathinner
6
2.6k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
520
エンジニアに許された特別な時間の終わり
watany
106
240k
KATA
mclloyd
PRO
35
15k
Paper Plane (Part 1)
katiecoart
PRO
0
6.5k
How to make the Groovebox
asonas
2
2.1k
Into the Great Unknown - MozCon
thekraken
40
2.3k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
160
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
330
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
140
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!