More and more of our time is spent keeping people up to date, be it via e-mail, chats, messages on our phones or person to person. Rather than have to broadcast your current status or feedback on a project wouldn’t it be good to have a way for you to, through the normal course of your job, provide an update in a common forum such as IRC or Slack?
ChatOps is a communication technique that tries to do that by integrating a bot into a channel in your chat program that allows you to interrogate and command systems related to your job. For example a typical software team will
– Develop new features using source code control and request that their colleagues review the changes
– Open/close tickets in the ticketing system
– Execute unit tests / functional tests againstthe code
– Deploy code
Each of these functions require access to different systems and more often than not you will be asked what the status or want to communicate to the team what the current state is. So wouldn’t it be nice if there was one place for all this information to feed into. So you can see what others are working on and others can see your work. For example:
– a Jira ticket is opened:
– and closed:
– A pull request is opened and merged:
With ChatOps you can get this information and more. In a future article we’ll discuss how to setup a bot to do your bidding, launching builds in Jenkins, quiesce alerts in Nagios and deploying software.