Webservice that notifies users on Slack when a change in GitLab concern them.
Create a Slack app, go to "OAuth & Permissions" page, add the following permissions to "Bot Token Scopes":
users:read
users.profile:read
chat:write
chat:write.public
Then click "Install to Workspace" and confirm.
Copy the "Bot User OAuth Token", will be put into SLACK_API_TOKEN
You'll require a GITLAB_TOKEN
with admin rights on Gitlab (read only is sufficient).
Ask it to one of the maintainers of your Gitlab instance.
To enable this notifier on one of your projects, go to: (Your repo) > Settings > Webhooks
You have to set:
- URL: the Gitlab URL you'll listen to (e.g.,
http://gitlab.mycompany.com
) - Secret Token: Gitlab secret token, which you will give to the webservice for authenticating
- Tick the following events:
- Comments
- Issues
- Merge request
- Job
- Pipeline
- Click on
Add webhook
To build the Docker and launch the webservice:
export GITLAB_TOKEN="your-gitlab-token"
export SLACK_API_TOKEN="your-slack-api-token"
HOST=127.0.0.1 PORT=5000 make build-docker run-docker
At first, this project has been implemented within Heuritech for an internal usage and then open sourced to GitHub. The original git history hasn't been copied during this migration. Thus, the initial commit is a copy of Heuritech's internal version, without the code specific to our company.
Contributors of the original repository are: