Skip to content

Slackbot written in Node.js that posts channel notifications to ping people when they are added as reviewers to a pull request, when changes are requested, and when those changes are approved.

Notifications You must be signed in to change notification settings

OpenClassrooms/slack-pull-request-notifier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Slack pull request notifier

What is it?

This is a Slackbot written in Node.js that posts channel notifications to ping people when they are added as reviewers to a pull request, when changes are requested, and when those changes are approved.

Illustration image

How is it used?

First, you have to create a new Slack application, then go to Add features and functionality > Incoming Webhooks and click on Add New Webhook to Workspace.

You must properly set the following environment variables:

PORT - Port of the http server. (Optional) (Default port is 9321)

SLACK_WEBHOOK - your Slack webhook URL

Example: https://hooks.slack.com/services/foo/bar/foobar123

USER_MAP - nickname mapping from GitHub to Slack

Example:

{
    "Mystraht": "john",
    "Ayunn": "richard",
}

The keys (ex. "Mystraht") correspond to GitHub nicknames, and the values (ex. "John") correspond to Slack nicknames.

Slack have issue with space in nickname, in this case use instead:

{
    "Mystraht": "john",
    "Ayunn": {
      id: "SLACK_USER_ID",
      name: "richard"
    },
}

You can then launch the Node server by running:

npm install
npm run start

You will then have to configure your GitHub webhook.

Go to your repository settings, and add a webhook with the following configuration:

Payload URL: http://<YOUR_DOMAIN>:9321/github-webhook
Content type: application/json
Event: Let me select individual events.
    -> Pull request
    -> Pull request review comment
    -> Pull request review

Requirement

This version of Slack pull request notifier is tested with NodeJS v8 LTS.

Contributing

Feel free to submit a pull request!

About

Slackbot written in Node.js that posts channel notifications to ping people when they are added as reviewers to a pull request, when changes are requested, and when those changes are approved.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •