I have been practicing devops for sometime now and felt the comfortness it gives when deploying and as well the complexity it adds to the process. Eventhough I haven t realised this concept of Chatops, but used few of it which made my life easier,
Github Integration - This channel in slack gives information about commits happening in all the repositories. Because of this micro services architecture, it became difficult to follow several repos and getting to know what is happening there. But this makes all the commit information grouped in one place. I think this is must have to know more about the project you are working on.
Build Channel - This gives information about build status of different pipelines. We used Continuous Deployment process and whenever commit is pushed, CI server will start its process of compiling, running unit tests, packaging and deploying. Notification will be sent in this channel, whenever some stage of pipeline fails.
Dev Bytes - This doesn t integrate with anything but contains very useful info shared by the peers. At times it was very overwhelming and couldn t catch up with all the things shared there and it raised my standard a lot.
Monit - This is used to know about status of environments and any critical alerts raised from the application. Messages posted here will notify people and poke them to take some action for it.
DJ request - Apart from these project critical channels, we also had a DJ request channel which can play the songs posted there. Cool stuff.
But we didn t take this to next level. In the sense,
- whenever we want to deploy something - we used either single click deployment in CI and
- when we want to check something - we ssh ed into the machine to get info about it.
It would have been good to have deployment happening via channels, where the channel/room is intelligent enough to process the commands and do the necessary action of pulling the logs, triggering the deployment, restarting the machine etc. This would serve as the documentation of commands and it raises curiosity to look at how these commands are used in provisioning.
This would be the next level of dev ops where this channels/chat rooms integrate with CI tools and Configuration management tools to automate the deployment process via chats. There are lot of discussions going aournd this topic and found this to be a good one. Big Panda chatops