Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Fast Deployment and Monitoring
Search
Brent Beer
April 23, 2014
Technology
150
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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
210
Tips and Tricks: Gotta Git Them All
brntbeer
3
650
Pull Request, code review and the GitHub Flow
brntbeer
0
280
Everything I wish I knew when I started using GitHub
brntbeer
1
7.5k
Fast Deployment and Monitoring For HelsinkiJS
brntbeer
1
300
Collaboration Behind your Firewall
brntbeer
0
90
How GitHub Builds Products
brntbeer
2
220
Collaborative Teaching for More Effective Learning
brntbeer
1
220
Other Decks in Technology
See All in Technology
Cloudflare Workers 向けアプリを C# で構築する ~WASM Native AOT への道~
nenonaninu
1
460
バイブコーディング時代のWebアプリ開発入門~Cloud Runで学ぶセキュアなビルドとデプロイ
waiwai2111
1
140
幾何アルゴリズムで なめらかなピン操作を / iOSDC Japan 2026 / smoothpin
kazumanagano
0
360
【技術的負債conf】事業成長に伴う技術的負債の説明責任とAIによるモニタリング、認知的負債について
i35_267
3
1.8k
新機種発売前に見直そう!端末移行で再ログインが要るアプリ・要らないアプリは何が違うのか 〜シームレスに再開できる設計と実装〜
zozotech
PRO
0
210
映像変換サーバーなしで端末内でHLSを生成してライブ配信
hikarusato
0
130
AIに任せた品質は、誰が見立てるのか - AI時代のテストマネジメント
nakanao
3
2.3k
絵ではじめるKubernetesセキュリティ
aoi1
4
680
積み重なった技術負債への挑戦 〜初手としての全社ゴト化〜
techtekt
PRO
0
1.3k
すぐできる衛星通信対応 あとは山奥に行くだけ
tatetate55
0
140
ADKで始める業務改善 - AIエージェント開発時の考えと設計
harappa80
2
220
Azure Serverless 2026:Production-ready な AI エージェント基盤 / Azure Serverless 2026: Production-Ready AI Agent Platform
miyake
2
250
Featured
See All Featured
Exploring anti-patterns in Rails
aemeredith
4
510
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
670
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
280
How to make the Groovebox
asonas
2
2.4k
Navigating Team Friction
lara
192
16k
Become a Pro
speakerdeck
PRO
31
6.3k
Building Adaptive Systems
keathley
44
3.2k
How to build a perfect <img>
jonoalderson
1
6k
A Soul's Torment
seathinner
8
3.6k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
[RailsConf 2023] Rails as a piece of cake
palkan
59
7k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
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