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
Continuos Deployment
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Lenz Gschwendtner
August 20, 2012
Technology
4
620
Continuos Deployment
My talk at YAPC::EU in Frankfurt about Continuos Deployment and Continuos Testing.
Lenz Gschwendtner
August 20, 2012
Tweet
Share
More Decks by Lenz Gschwendtner
See All by Lenz Gschwendtner
business modelling
norbu09
0
79
productivity hacks
norbu09
1
59
startup.school.nz August slides
norbu09
4
60
founder.hacks August meetup
norbu09
5
58
Debugging Humans
norbu09
0
51
Docker intro - Meetup Wellington
norbu09
0
97
Planet Express Ship
norbu09
1
1.1k
iWantMyName architecture
norbu09
1
130
realizing ideas
norbu09
1
100
Other Decks in Technology
See All in Technology
茨城の思い出を振り返る ~CDKのセキュリティを添えて~ / 20260201 Mitsutoshi Matsuo
shift_evolve
PRO
1
280
Bill One 開発エンジニア 紹介資料
sansan33
PRO
5
17k
クレジットカード決済基盤を支えるSRE - 厳格な監査とSRE運用の両立 (SRE Kaigi 2026)
capytan
6
2.8k
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1k
仕様書駆動AI開発の実践: Issue→Skill→PRテンプレで 再現性を作る
knishioka
2
660
Agile Leadership Summit Keynote 2026
m_seki
1
620
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
280
20260208_第66回 コンピュータビジョン勉強会
keiichiito1978
0
130
日本の85%が使う公共SaaSは、どう育ったのか
taketakekaho
1
200
M&A 後の統合をどう進めるか ─ ナレッジワーク × Poetics が実践した組織とシステムの融合
kworkdev
PRO
1
450
制約が導く迷わない設計 〜 信頼性と運用性を両立するマイナンバー管理システムの実践 〜
bwkw
3
940
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
2
200
Featured
See All Featured
What does AI have to do with Human Rights?
axbom
PRO
0
2k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
310
Design in an AI World
tapps
0
140
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
[SF Ruby Conf 2025] Rails X
palkan
1
750
Balancing Empowerment & Direction
lara
5
890
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
150
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
240
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
0
1.1k
Utilizing Notion as your number one productivity tool
mfonobong
3
220
The untapped power of vector embeddings
frankvandijk
1
1.6k
Transcript
Continuos Deployment @norbu09 Monday, 20 August 12
who is that guy anyway Monday, 20 August 12
Austrian Bavarian Kiwi Monday, 20 August 12
why would we want that? way too scary! Monday, 20
August 12
get out of my way let me code, don’t make
me switch context Monday, 20 August 12
robust rollout is key this implies robust rollback Monday, 20
August 12
Giovanni Monday, 20 August 12
$ gio deploy Running deploy for 'githublicious' Loading git Plugin
[git] Tag: [v1331523346] [bender] connected [bender] running update_cache From github.com:norbu09/githublicious db1629a..34c2176 master -> origin/master [bender] Fetching origin Fetching origin Updating db1629a..34c2176 Fast-forward Mojolicious/Plugin/Jenkins.pm | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) [bender] running restart Monday, 20 August 12
$ cat .giovanni.conf [project "githublicious"] hosts = bender root =
~/githublicious init = ~/githublicious/restart deploy = update_cache, restart, notify rollback = rollback, restart, notify repo =
[email protected]
:norbu09/githublicious.git user = lenz Monday, 20 August 12
fork it on github github.com/norbu09/Giovanni Monday, 20 August 12
one step further Monday, 20 August 12
Monday, 20 August 12
githublicious github.com/norbu09/githublicious Monday, 20 August 12
deploy with github post-receive hooks Monday, 20 August 12
$ git branch origin/HEAD -> origin/master origin/admin_tools origin/affiliate_tracking origin/bugfix origin/dyndns
origin/handle_migrate origin/login_split_testing origin/master origin/oauth origin/user_prefs_handling origin/voucher_codes ... Monday, 20 August 12
define a “master” Monday, 20 August 12
run anything on commit Monday, 20 August 12
currently supports • Jenkins and Giovanni • Jabber and HipChat
• git • tagged and timestamped rollout Monday, 20 August 12
one step further Monday, 20 August 12
Continuos Testing Monday, 20 August 12
no bugs right now vs no bugs when i tested
it Monday, 20 August 12
stuff breaks over time Monday, 20 August 12
The Eye Monday, 20 August 12
Test Driven Monitoring Monday, 20 August 12
• add a test directory • write Mechanizer or PhantomJS
tests • run TheEye • get notifies if tests fail Monday, 20 August 12
bin/TheEye [test directory] Monday, 20 August 12
for your peace of mind Monday, 20 August 12
• any test that outputs TAP • Prowl notifications •
RRD and Graphite graphs currently supports Monday, 20 August 12
summary Monday, 20 August 12
automate everything Monday, 20 August 12
notify a lot via Jabber / IRC / new thing
of the day Monday, 20 August 12
avoid context switching Monday, 20 August 12
questions? @norbu09 Monday, 20 August 12