This project is a fork of the original work from https://github.com/kogitant/sonar-slack-notifier-plugin. I made modifications to keep it working for the latest versions of SonarQube (7.2, 7.3)
SonarQube plugin for sending notifications to Slack
This plugin sends a Slack message of project analysis outcome to congired project specific slack channel. The plugin uses Incoming Web Hook as the integration mechanism with Slack.
The plugin must be placed in SONAR_HOME/extensions/plugins directory and SonarQube must be restarted.
To build the plugin simply run
mvn clean package
After the plugin has been installed, you need to configure it. Although SonarQube offers project level configurations for some plugins, they cannot be used with this plugin because it runs in the "server side", and only sees the global settings.
As administrator, go to the general settings and configure the Sonar instance URL:
A new category Slack appears in the left menu:
Under it you can find the Slack Notifier plugin configurations:
In the above example there is a Project Key to Slack Channel configuration for an example project.
You can override the globally defined web-hook, if you like. Example use case: You want a project to notify a different Slack team.
The project key of any SonarQube project can be found in the project page (bottom right corner):
The project key supports wildcards at the end.
Notifications can be sent for all Quality Gate statuses, or just for WARNING/ERROR statuses.
- Tested with SonarQube 7.2 and 7.3 against Slack on 23.02.2019
- https://github.com/astrebel/sonar-slack-notifier-plugin
- https://github.com/dbac2002/sonar-hipchat-plugin
- http://docs.sonarqube.org/display/DEV/Adding+Hooks
- http://docs.sonarqube.org/display/DEV/Build+plugin
- https://api.slack.com/custom-integrations
- https://api.slack.com/docs/attachments#message_formatting
- https://api.slack.com/docs/attachments
mvn clean jacoco:prepare-agent install -DskipITs=true
mvn jacoco:prepare-agent-integration failsafe:integration-test
mvn sonar-maven-plugin:sonar -Dsonar.host.url=http://localhost:9000