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
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
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
2人で作ったAIダッシュボードが、開発組織の次の一手を照らした話― Cursor × SpecKit × 可視化の実践 ― Qiita AI Summit
noalisaai
1
370
usermode linux without MMU - fosdem2026 kernel devroom
thehajime
0
220
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
200
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
120
Azure Durable Functions で作った NL2SQL Agent の精度向上に取り組んだ話/jat08
thara0402
0
150
SREのプラクティスを用いた3領域同時 マネジメントへの挑戦 〜SRE・情シス・セキュリティを統合した チーム運営術〜
coconala_engineer
2
600
小さく始めるBCP ― 多プロダクト環境で始める最初の一歩
kekke_n
1
350
変化するコーディングエージェントとの現実的な付き合い方 〜Cursor安定択説と、ツールに依存しない「資産」〜
empitsu
4
1.3k
AWS Network Firewall Proxyを触ってみた
nagisa53
0
140
What happened to RubyGems and what can we learn?
mikemcquaid
0
250
なぜ今、コスト最適化(倹約)が必要なのか? ~AWSでのコスト最適化の進め方「目的編」~
htan
1
110
Meshy Proプラン課金した
henjin0
0
250
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
225
10k
Skip the Path - Find Your Career Trail
mkilby
0
53
Code Reviewing Like a Champion
maltzj
527
40k
For a Future-Friendly Web
brad_frost
182
10k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
290
Building Adaptive Systems
keathley
44
2.9k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
350
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.6k
WCS-LA-2024
lcolladotor
0
450
A Modern Web Designer's Workflow
chriscoyier
698
190k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
280
Game over? The fight for quality and originality in the time of robots
wayneb77
1
110
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