A GoCD notification plugin which sends direct emails and Slack messages to the person who breaks a build
- Download the lastest release JAR from jCenter:
- Drop it under
$GOCD_DIR/plugins/external
- Restart Go Server
Customized specifically for Xola's Slack
This plugin requires access to Go API to fetch status of previous job execution and material changes. If you are enforced to login before you can access the main pipelines screen, you need to provide a valid user/password to our plugin.
- Enter plugin settings
- Enter API username and password:
As this pluging needs to resolve user's email into a Slack ID, a WebHook is not enough to work. You need to install our Slack App into your team and get an API token.
You may see this warning when authorizing our app to work with your team. We will only access your team profile in order to match a email from a Material change into a Slack ID
- Install our app into your team:
- Copy your Slack API Token into GoCD's plugin configuration
- (optional) Configure a custom channel or slack id for the bot. If a channel is set, messages will still @mention a user. If not set, commits with an author that can't be resolved to a user in Slack will be posted to #dev-standup by default. Enter plugin settings and then:
- Configure your SMTP server details
- If you SMTP requires authentication, provide your account/password
- Provide a From email, the one our plugin will be sending email on behalf
- Provide an optional CC, this email will copied every time an email is sent
- Pipeline Broken Message: sent to a user when a specific pipeline is broken (the build fails) by the last commit
- Pipeline Still Broken Message: sent to a user when a specific pipeline was broken and the last commit didn' fix it
- Pipeline Fixed Message: sent to a user when a specific pipeline was broken the last commit fixed it
If you want to build it yourself
- Install
gradle
./gradlew
(orgradlew.bat
for Windows)- See
./gradlew tasks
to see a list of tasks ./gradlew jar
to build the jar
The final compiled jar will be as plugin/build/libs
as build-watcher-plugin-0.<version>.jar
where <version>
is
defined by the version defined in the build.gradle file