Slack's Jira integration does not support for comments, yet.
But, Hubot can do that for you :)
Install this package with npm in your hubot path.
$ cd your_hubot_path
$ npm install hubot-jira-comment --save
Add this package to external-scripts list.
$ echo '["hubot-jira-comment"]' > external-scripts.json
Now your hubot will load this package when it starts.
Hubot already includes support for the express web framework to serve up HTTP requests. (explained at hubot's scripting.md)
It listens on the port specified by the EXPRESS_PORT
or PORT
environment veriables and defaults to 8080.
$ export PORT=9009
To generate links back to jira, you need HUBOT_JIRA_URL
environment variable
$ export HUBOT_JIRA_URL="http://172.16.45.12/jira"
Now hubot is ready.
Start your hubot, and it will start to listen on /hubot/chat-jira-comment/:room
on 9009 port.
Let's test by sending a POST
request to /hubot/chat-jira-comment/:room
path with jira webhook JSON data, using curl
.
There's a sample Jira Webhook Post message on atlassian webpage, but that's too long, so let's test with a simpler json data.
$ curl \
-X POST \
-H "Content-Type: application/json" \
-d \
'{
"webhookEvent":"jira:issue_updated",
"comment":{
"author":{
"name":"mnpk"
},
"body":"hello,hubot-jira-comment"
},
"issue": {
"key":"key",
"fields":{
"summary":"summary"
}
}
}' \
http://localhost:9009/hubot/chat-jira-comment/general
If you ran hubot using slack-adapter, you will receive a message from Hubot on #general
channel.
If you ran hubot using shell-adapter, you will receive a message like below on your console.
hubot> *key summary* _(http://172.16.45.12/jira/browse/key)_
@mnpk's comment:
>>>
hello,hubot-jira-comment
You can add an webhook on Setting > System > Advanced > WebHooks
menu.
(The page URL looks like http://<your_jira_path>/plugins/servlet/webhooks
)
Create new webhook by click on Create a WebHook
button.
URL is http://<your-hubot-listener>:<port>/hubot/chat-jira-comment/<room>
with your hubot address, port, room.
(e.g. If your hubot's address is 172.16.45.12, your hubot's PORT
is 9009, your chat room name is #general, then the URL will be http://172.16.45.12:9009/hubot/chat-jira-comment/general
)
Make sure to check on Issue > update
checkbox.
Click Create
button, and... that's all.