promulgator

command module
v0.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 6, 2016 License: MIT Imports: 9 Imported by: 0

README

A bot that will provide two-way integration between Slack and Jira. Currently it provides one-way integration from Jira to Slack.

Features

  • Take webhooks from Jira and post new comments to a Slack channel.

Usage

Bot Configuration

All configuration is done through environment variables.

  • JIRA_URL -- The URL of the associated Jira instance.
  • JIRA_WEBHOOK_KEY -- The key to use to verify incoming Jira webhooks.
  • SLACK_KEY -- The token provided by Slack's bot integration.
  • SLACK_USER -- Post updates as this user. This should generally match the name of the bot.
  • SLACK_DEFAULT_CHANNEL -- Post updates to this channel. The bot must be a member of the channel.
  • WEBHOOK_BIND -- Bind to this address/port to receive web hooks.

Jira Configuration

Set up a Jira webhook to http://SERVER:PORT/jirahook?key=WEBHOOK_KEY. The webhook should trigger on issue updates.

Slack Configuration

Set up a Slack bot integration. The bot's username should be the value of SLACK_USER and the provided API token should be the value of SLACK_KEY. The bot should be invited into the desired channel, and the channel's name (with the # at the beginning) should be configured as SLACK_DEFAULT_CHANNEL.

Building

This project uses the glide dependency management tool. Use glide install and then build normally, ensuring that GO15VENDOREXPERIMENT=1 is in your environment if using Go 1.5.

For quick builds you don't have to do this, but the versions of dependencies may not be the same as those that I have built against.

Upcoming Features

I'm working on this in my spare time, so can't make any promises on when these will be done.

  • Real logging instead of writing to stdout
  • Support HTTPS for webhooks
  • Handle events from Jira for issues created, resolved, etc.
  • Move to three-tier system where incoming actions are completely isolated from outgoing actions.
  • Allow commenting on, resolving, closing, and assigning Jira issues from Slack. Need to decide on slash commands (/jira blah blah) vs. bot-type commands (@jira blah blah). I may support both options.
  • Handle webhooks from Git servers to resolve issues based on pushed commits.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL