Skip to content

juhasipo/gocd-build-status-notifier

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GoCD build status notifier

This is GoCD's Notification plugin that updates SCM with build status.

Supported:

  • GitHub Pull Request status
  • Stash Pull Request status
  • Gerrit Change Set status

Requirements

These plugins require GoCD version >= v15.x or above

Get Started

Installation:

  • Download the latest plugin jar from Releases section. Place it in <go-server-location>/plugins/external & restart Go Server.

Behavior

  • Go Server notifies the plugin on every Stage Status Change with relevant details. The plugin scans the build-cause to see if the github.pr / stash.pr / gerrit.cs material is present.
  • If it is, then Pull Request/Change Set status is updated with status=stage-result, context=pipeline-name/stage-name & target-url=trackback-url.

Configuration

  • You will see Github Pull Requests status notifier / Stash Pull Requests status notifier / Gerrit Change Set status notifier on plugin listing page Plugins listing page

  • You can configure the plugin (this feature requires GoCD version >= v15.2, use system properties to configure the plugin) Configure plugin pop-up

  • When the stage status changes... Pipeline Schedule

  • The PR state is updated! Update Status

Target URL:

  • You can provide trackback through system property go.plugin.build.status.go-server. It defaults to 'http://localhost:8153' if not available. Eg:
-Dgo.plugin.build.status.go-server=http://localhost:8153

GitHub

Authentication:

  • You can choose to provide username & password through system property go.plugin.build.status.github.username & go.plugin.build.status.github.password. Eg:
-Dgo.plugin.build.status.github.username=johndoe
-Dgo.plugin.build.status.github.password=thisaintapassword

or provide the oauth access token through system property go.plugin.build.status.github.oauth.

-Dgo.plugin.build.status.github.username=johndoe
-Dgo.plugin.build.status.github.oauth=thisaintatoken
  • (or) through file ~/.github on Go Server with the following contents:
login=johndoe
password=thisaintapassword

or

login=johndoe
oauth=thisaintatoken

Github Enterprise:

  • You can choose to provide endpoint through system property go.plugin.build.status.github.endpoint. Eg:
-Dgo.plugin.build.status.github.endpoint=http://code.yourcompany.com
  • (or) through file ~/.github on Go Server with the following contents:
endpoint=http://code.yourcompany.com

Stash

Setup:

  • You need to provide endpoint, username & password through system property go.plugin.build.status.stash.endpoint, go.plugin.build.status.stash.username & go.plugin.build.status.stash.password. Eg:
-Dgo.plugin.build.status.stash.endpoint=http://localhost:7990
-Dgo.plugin.build.status.stash.username=johndoe
-Dgo.plugin.build.status.stash.password=thisaintapassword

Gerrit

Setup:

  • You need to provide endpoint, username & password through system property go.plugin.build.status.gerrit.endpoint, go.plugin.build.status.gerrit.username & go.plugin.build.status.gerrit.password. Eg:
-Dgo.plugin.build.status.gerrit.endpoint=http://localhost:7990
-Dgo.plugin.build.status.gerrit.username=johndoe
-Dgo.plugin.build.status.gerrit.password=thisaintapassword

FAQs

About

GoCD build status notifier

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 96.6%
  • HTML 2.8%
  • Shell 0.6%