This repository contains a bot to integrate XebiaLabs tools into your ChatOps initiative.
Collaboration and teamwork are two of the cornerstones of how we work at XebiaLabs. Being a distributed team, this means using a chat tool to discuss and keep team members up-to-date. More and more, we have been including our tools in the chat room as well -- JIRA, Zendesk, PagerDuty, and, of course, our own products!
We've written an internal bot to connect XL Deploy to our chat room. This bot, based on the Lita framework, allows communication to and from XL Deploy.
The source code is published here for you to try out. Give it a shot and let us know what you think!
In order to get started with the bot, follow these steps:
- Install the prerequisites for the bot.
- Install the XLD bot notifier plugin in XL Deploy to notify the bot (and your chat room) of deployment status changes.
- Check out and configure the sample bot to connect to XL Deploy and start playing around locally.
- Connect the bot to your chat tool of choice, for instance HipChat or Slack.
This repository contains:
- lita-xl-deploy: A handler to communicate with XL Deploy from your chat room, written for the Lita bot framework
- xld-bot-notifier: A plugin for XL Deploy that pushes status information to the bot
- sample-bot: A sample bot configuration
To run the bot, you need to install Lita. Lita requires:
- Ruby, version 2.0 or greater (JRuby 9.0.0.0+ or Rubinius 2+ also work)
- Ruby development libraries and header files
- Redis, version 2.6 or greater
- gcc and make
If your environment does not have Ruby 2.0 installed (for instance, Ubuntu 14), you can install it using the following commands:
sudo apt-add-repository ppa:brightbox/ruby-ng
sudo apt-get update
sudo apt-get install ruby2.0 ruby2.0-dev
sudo apt-get install redis-server
sudo apt-get install gcc make
Lita itself is installed as follows:
sudo gem install lita
If you have any feedback regarding this software or suggestions for improvements, please log them in the XL Deploy forum.
Regards, The XebiaLabs team