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
490
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
69
productivity hacks
norbu09
1
45
startup.school.nz August slides
norbu09
4
50
founder.hacks August meetup
norbu09
5
49
Debugging Humans
norbu09
0
42
Docker intro - Meetup Wellington
norbu09
0
86
Planet Express Ship
norbu09
1
970
iWantMyName architecture
norbu09
1
100
realizing ideas
norbu09
1
87
Other Decks in Technology
See All in Technology
GrafanaMeetup_AmazonManagedGrafanaのアクセス制御機能とマルチテナント環境下でのアクセス制御について
daitak
0
240
よく聞くけど使ったことないソフトウェアNo.1 KafkaとSnowflake
foursue
4
360
Kernel MemoryでAzure OpenAI Serviceとお手軽データソース連携
mitsuzono
1
260
20分で完全に理解するGrafanaダッシュボード
hamadakoji
3
660
JSON攻略法.pdf
miyakemito
8
5.1k
AWSに詳しくない人でも始められるコスト最適化ガイド
yuhta28
1
240
Azure Container Apps + Bicep 〜 こんな感じで運用しています
kaz29
2
480
APIファーストなプロダクトマネジメントの実践 〜SaaSus Platformでの例〜 / "Practicing API-First Product Management - An Example with SaaSus Platform
oztick139
0
110
Google Cloud Next '24でブログを10本書いた方法と勉強会を沸かせた方法
yasumuusan
0
300
ゼロから始めるVue.jsコミュニティ貢献 / first-vuejs-community-contribution-link-and-motivation
lmi
1
130
元インフラエンジニアに成る / Human Resources to Human Relations
bobtani
4
920
開発パフォーマンスを最大化するための開発体制
ham0215
2
430
Featured
See All Featured
The Mythical Team-Month
searls
216
42k
In The Pink: A Labor of Love
frogandcode
138
21k
Fontdeck: Realign not Redesign
paulrobertlloyd
76
4.9k
Teambox: Starting and Learning
jrom
128
8.4k
Statistics for Hackers
jakevdp
789
220k
[RailsConf 2023] Rails as a piece of cake
palkan
23
4k
Creatively Recalculating Your Daily Design Routine
revolveconf
210
11k
A Tale of Four Properties
chriscoyier
151
22k
Gamification - CAS2011
davidbonilla
76
4.6k
Music & Morning Musume
bryan
41
5.6k
How to name files
jennybc
65
93k
Bash Introduction
62gerente
604
210k
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