The 'Update Stash Build Status Build Event Handler' is an event handler which interacts with the Bitbucket Server (previously Stash) Build Integration REST API. This feature allows Continua CI to mark commits within a BitBucket Server repository with a build state of successful, failed, or "in progress".
The event handler is set to automatically respond to the following Build Events:
- On Before Stage Start
- On Build Pending Promotion
- On Stage Completed
- On Build Stopping
- On Build Completed
The Pending status is sent when the On Before Stage Start event is triggered for a specified stage.
The Success status is sent when the On Stage Completed event is triggered for a specified stage, or optionally when the On Build Pending Promotion event fires - whichever is first.
The Failure status is sent when the On Stage Completed event is triggered for a specified stage or On Build Stopping, On Build Completed events are triggered and the build has failed.
Example use case
This event handler works fantastically as a pre-step within a pull request pipeline. ContinuaCI can be configured to automatically pull the request, build it, test it, and report back its status.
How to create an update Stash Build Status Build Event Handler
- Navigate to the events tab within the desired Build Configuration
- Click the 'Create' link within the 'Build Event Handlers' section
Select an Event Handler
- Enter the name of the event handler (in this case 'Update Stash Build Status')
- Enter the sequence in which you wish this event handler to be run. In our case this is the first event handler so we will leave the default of 1
- From the type dropdown select 'Update Stash Build Status'
Event Handler Name
Friendly name for the event handler (this will be visible in the 'Events' section of the website)
The order in which the event handler will be run (relevant in the situation where multiple event handlers are present).
Whether this event handler can be run
The type of event handler (Octopus Deploy, Tag Repository Changeset, Update GitHub Status. Update Stash Build Status)
Update GitHub Status
Enter the BitBucket Server API URL.
- Enter your BitBucket Server Username and Password.
- Enter the name of the Continua CI repositories that you wish to consider when updating status (these can be found on the 'repositories' page).
Stash Server Url
The URL of the Bitbucket Server REST API endpoint
The Bitbucket Server username - used to login (this user should have access to the repository in question).
The Bitbucket Server password - used to login (passwords should not contain any of the following characters: !:@).
A comma separated list of repository names to apply this status information to.
When To Run
Enter the stages which trigger this event handler.
The stage for the On Before Stage Start event when the 'Pending Comment' text will be sent
The stage for the On Stage Completed event when the 'Success Comment' or 'Failure Comment' text will be sent
Complete on Waiting Promotion
If any stage is awaiting promotion, send the Success or Failure Comment on the On Build Pending Promotion event
Enter the comments that you wish to send to the Bitbucket Server
In Progress Comment
The text of the comment that will be sent when the build hits the 'On Before Stage Start' event for the specified stage.
The text of the comment that will be sent when build hits the 'On Stage Completed' event for the specified stage, and the build has failed.
The text of the comment that will be sent when build hits the 'On Stage Completed' event for the specified stage, and the build has succeeded.
Select the build options for this event handler
Wait for results
Should the event handler wait for the result before proceeding. Unchecking this option will run the Event Handler in a separate thread.
Fail build on error
Whether or not to fail the build if this event handler fails.
Log build messages
Whether or not logs for this event handler will be displayed in the build log.