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
Fast Deployment and Monitoring
Search
Brent Beer
April 23, 2014
Technology
130
1
Share
Fast Deployment and Monitoring
Given at
www.developermarch.com/developersummit/
2014
Brent Beer
April 23, 2014
More Decks by Brent Beer
See All by Brent Beer
How GitHub Does Devops
brntbeer
0
190
Tips and Tricks: Gotta Git Them All
brntbeer
3
630
Pull Request, code review and the GitHub Flow
brntbeer
0
270
Everything I wish I knew when I started using GitHub
brntbeer
1
7.4k
Fast Deployment and Monitoring For HelsinkiJS
brntbeer
1
290
Collaboration Behind your Firewall
brntbeer
0
71
How GitHub Builds Products
brntbeer
2
200
Collaborative Teaching for More Effective Learning
brntbeer
1
210
Other Decks in Technology
See All in Technology
Introduction to Bill One Development Engineer
sansan33
PRO
0
410
こんなアーキテクチャ図はいやだ / Anti-pattern in AWS Architecture Diagrams
naospon
1
320
DevOpsDays2026 Tokyo Cross-border practices to connect "safety" and "DX" in healthcare
hokkai7go
0
150
最初の一歩を踏み出せなかった私が、誰かの背中を押したいと思うようになるまで / give someone a push
mii3king
0
140
終盤で崩壊させないAI駆動開発
j5ik2o
2
2.1k
Bluesky Meetup in Tokyo vol.4 - 2023to2026
shinoharata
0
190
インフラを Excel 管理していた組織が 3 ヶ月で IaC 化されるまで
geekplus_tech
3
190
ワールドカフェI /チューターを改良する / World Café I and Improving the Tutors
ks91
PRO
0
220
自分のハンドルは自分で握れ! ― 自分のケイパビリティを増やし、メンバーのケイパビリティ獲得を支援する ― / Take the wheel yourself
takaking22
1
430
2026年度新卒技術研修 サイバーエージェントのデータベース 活用事例とパフォーマンス調査入門
cyberagentdevelopers
PRO
8
8.4k
最近の技術系の話題で気になったもの色々(IoT系以外も) / IoTLT 花見予定会(たぶんBBQ) @都立潮風公園バーベキュー広場
you
PRO
1
160
AgentCore RuntimeからS3 Filesをマウントしてみる
har1101
4
440
Featured
See All Featured
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
170
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.5k
How to Ace a Technical Interview
jacobian
281
24k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.6k
Speed Design
sergeychernyshev
33
1.6k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.6k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
470
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.2k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
370
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.2k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
250
Transcript
Fast Deployment and Monitoring Why continuous integration and ChatOps are
crucial to every application Brent Beer GitHub Trainer @brntbeer
Fast Deployment and Monitoring Why continuous integration and ChatOps are
crucial to every application
Agenda Who am I? Testing Hooks / Services ChapOps
Who am I?
Trainer
Developer
From the midwest
From the midwest of the US
None
None
In San Francisco now
None
Who even writes tests?
Who even writes tests first ?
I never did while in school
I still don't
I still don't
I'm geing beer!
Tests
"They take too long to write!"
"They take too long to write!" "I don't know how
to write them"
"They take too long to write!" "I don't know how
to write them" "My code is perfect"
"They take too long to write!" "I don't know how
to write them" "My code is perfect" Lies! Lies! Lies!
Make it easy to write tests
script/cibuild
None
None
Sometimes running tests takes too long
Sometimes running tests takes too long
Not just for your Enterprise Applications
"Well older things still pass tests"
Share burden and responsibility
Never work alone
Never work alone
Pull Requests
Send yourself Pull Requests
Get others to do the work for you!
@mentions
@mentions
What if others could see if your tests were passing
without running the code?
Hooks and Services
Make tests run easily for services
script/cibuild
Many third party services can be hooked into GitHub
Status API
Now someone visiting the Pull Request can know what's going
on
Status Types
History of timeline statuses
Details
None
So many CI services
None
None
None
Self Configuration
None
Manual Configuration
None
None
Services can do more than just send data to the
API
ChatOps
Context of the current state of things
Why Chat?
Hubot
Hubot
hubot.github.com
None
None
None
None
None
None
None
None
Hubot's Domain
Who does the things? Service? Hook? Robot?
Hubot: deploy all the things
Make it fast
Hubot: Make it fast
Deploys
None
"Hello @user, your deploy was successful, keep an eye on
Haystack"
"Hello @user, your deploy was successful, keep an eye on
Haystack"
None
Digging Deeper
Going beyond an exception
Graphite
Graphite
statsd and collectd
Now we have things reporting
Now we have things reporting
Who should fetch these graphs?
Maybe just a dashboard view?
Dashing
None
Dashboards
None
Group understanding
Group understanding
Useful commands
Hubot: help pager
Hubot: graph me -12h @network.border.cp1.bgp
Hubot: graph me -4h @browser.frontend
Hubot: deploy training- app/chronological to production
Teach by doing
This was always my main motivation with Hubot - teaching
by doing by making this visible. It's an extremely powerful teaching technique. - @rtomayko
Signal vs Noise
Next Steps
Take a deep breath
Easy to run tests
More tests get wrien
Or collaborate
What's the state of the Pull Request?
What has been happening on the Pull Request
Your chatroom could be your office
Use robots
Use robots more
How do things look?
Don't bother me
Keep Deploying. Keep Building. Do it Faster & Safer.
Thank you! Brent Beer GitHub Trainer @brntbeer
References: hps://hubot.github.com hps://github.com/shopify/dashing hps://github.com/graphite-project hps://github.com/etsy/statsd/ hps://developer.github.com/v3/ hps://github.com/collectd hps://developer.github.com/v3/ hps://circleci.com/ hps://travis-ci.org/
hps://github.com/github/janky