Automation and Monitoring with Hubot
Minimum price
Suggested price

Automation and Monitoring with Hubot

For DevOps and Developers

About the Book

DISCLAIMER: The book was written in end of 2014 and has not been updated since. Hubot has evolved, and example code may no longer be valid. However, the book still contains plenty of generic techniques that can be applied to newer versions of Hubot, also Slackbot, and any other chatbot tech.


This book covers everything you need to start using Hubot in your organization - installation on Linux, production grade deployment and init.d scripts. You will understand how Hubot scripts work, how to deal with dependencies, how to install new scripts and adjust them to suit your needs.

You will also learn to write and debug your own scripts, ranging from simple ones with just a few lines of code, to advanced ones that integrate several systems together.

There is a whole chapter for those who use GitHub - Hubot can do many wonderful things using GitHub API and web hooks. The book will show you ways to automate your infrastructure tasks and deployments using Jenkins, ways to integrate with numerous systems and services.

This knowledge was extracted from real world use and compacted into a single book. You can use it as a cookbook and pick just the things you need, or you can read it cover to cover and learn everything you can about using Hubot to full extent.

About the Author

Tomas Varaneckas
Tomas Varaneckas

Tomas Varaneckas is a software developer and devops engineer who open sourced a number of scripts for integrating Hubot with tools like Jenkins CI, GitHub and Graylog. Among his other creations there is Hubot Control - a tool for managing multiple Hubot instances using a web interface, and Hubot PubSub - a solution for building flexible chat based monitoring. 

Table of Contents

  • A Word From The Author
  • Preface
  • Run, Hubot, Run!
    • The Operating System
    • Installing Dependencies
    • Installing Hubot
    • Creating System User For Hubot
    • Creating Your First Hubot
    • Exploring Your Hubot Instance
  • Configuring Adapters
    • Choosing The Chat Service
    • Campfire
    • HipChat
    • IRC
    • XMPP/Jabber
    • Slack
    • Skype
  • Deploying Hubot To Production
    • Creating Hubot Instance For Production
    • Hubot And Source Control Management
    • Checking Hubot Into Git
    • Handling Environmental Variables
    • Hubot As A Daemon
    • Managing Hubots With Hubot Control
  • Using Hubot Scripts
    • Getting Help
    • Where To Find Scripts
    • Enabling Bundled Scripts
    • Installing Script Dependencies
    • Installing Script Packages
    • Configuring Scripts
    • Uninstalling Scripts
  • Hubot Scripting
    • Hello, World!
    • Basic Operations
    • Reacting To Messages In Chatroom
    • Reacting To Message Parts
    • Capturing All Messages
    • Capturing Unhandled Messages
    • Serving HTTP Requests
    • Cross Script Communication With Events
    • Periodic Task Execution
    • Debugging Your Scripts
    • Advanced Debugging With Node Inspector
    • Writing Unit Tests For Hubot Scripts
    • Hubot Script Template
    • Using Hubot Shell Adapter For Script Development
    • Developing Scripts With Hubot Control
    • Learning More
  • Roles And Authentication
    • Setting Hubot Auth Admin
    • Assigning Roles
    • Applying Roles
  • Restricting Command Execution
    • Restricting Execution To Certain Rooms
    • Limiting Execution Hours
  • Monitoring With Hubot
    • Hubot PubSub
    • Alternative To Hubot PubSub
    • Installing Hubot PubSub
    • Subscribing To Event Notifications
    • Publishing Events
    • Using Event Namespaces For Advanced Message Routing
    • Handling Unsubscribed Events
    • Securing Hubot PubSub
    • Publishing Events From Ruby
    • What And When To Monitor
    • Monitoring Error Rates With Graylog2 Alarms And Hubot PubSub
    • Receiving Nagios Alerts
  • Graphing With Hubot
    • Graphite
  • GitHub Integration
    • Putting An End To GitHub Email Notifications
    • Why Not Just Use GitHub Service Hooks?
    • Creating Auth Tokens
    • Creating GitHub API Hooks
    • Listing And Deleting GitHub API Hooks
    • Pushes
    • Issues
    • Pull Requests
    • Team Add
    • Membership
    • Automatically Closing Old GitHub Issues
  • GitLab Integration
    • Creating Web Hooks
    • Pushes
    • Issues
    • Merge Requests
  • Building And Deploying With Hubot And Jenkins
    • Notifying About Broken Jenkins Builds
    • Executing Jenkins Builds
    • Passing Parameters To Jenkins Builds
    • Deploying With Jenkins
  • Invoking Chef’s Knife With Hubot
    • Configuring Knife
    • Hubot Chef Script
    • Advanced Hubot Chef Script
    • Third Party Hubot Chef Scripts
    • Hubot With Puppet, Ansible, Or Something Else
  • There Are No Limits

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

80% Royalties. Earn $16 on a $20 book.

We pay 80% royalties. That's not a typo: you earn $16 on a $20 sale. If we sell 5000 non-refunded copies of your book or course for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earnedover $13 millionwriting, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub