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
Lenz Gschwendtner
August 20, 2012
Technology
4
570
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
75
productivity hacks
norbu09
1
50
startup.school.nz August slides
norbu09
4
54
founder.hacks August meetup
norbu09
5
54
Debugging Humans
norbu09
0
46
Docker intro - Meetup Wellington
norbu09
0
92
Planet Express Ship
norbu09
1
1k
iWantMyName architecture
norbu09
1
120
realizing ideas
norbu09
1
96
Other Decks in Technology
See All in Technology
開発組織のための セキュアコーディング研修の始め方
flatt_security
3
2.4k
スタートアップ1人目QAエンジニアが QAチームを立ち上げ、“個”からチーム、 そして“組織”に成長するまで / How to set up QA team at reiwatravel
mii3king
2
1.5k
Nekko Cloud、 これまでとこれから ~学生サークルが作る、 小さなクラウド
logica0419
2
980
30分でわかる『アジャイルデータモデリング』
hanon52_
9
2.7k
リーダブルテストコード 〜メンテナンスしやすい テストコードを作成する方法を考える〜 #DevSumi #DevSumiB / Readable test code
nihonbuson
11
7.3k
Culture Deck
optfit
0
430
急成長する企業で作った、エンジニアが輝ける制度/ 20250214 Rinto Ikenoue
shift_evolve
3
1.3k
プロダクトエンジニア構想を立ち上げ、プロダクト志向な組織への成長を続けている話 / grow into a product-oriented organization
hiro_torii
1
220
エンジニアのためのドキュメント力基礎講座〜構造化思考から始めよう〜(2025/02/15jbug広島#15発表資料)
yasuoyasuo
18
6.9k
エンジニアが加速させるプロダクトディスカバリー 〜最速で価値ある機能を見つける方法〜 / product discovery accelerated by engineers
rince
4
380
速くて安いWebサイトを作る
nishiharatsubasa
11
13k
データ資産をシームレスに伝達するためのイベント駆動型アーキテクチャ
kakehashi
PRO
2
550
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
Producing Creativity
orderedlist
PRO
344
39k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
240
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Rails Girls Zürich Keynote
gr2m
94
13k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
It's Worth the Effort
3n
184
28k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
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