The claim plugin is meant to allow users to claim failing builds and tests from Jenkins to signal they are taking responsibility in fixing them.
Supported features
- Claiming failed builds.
- Claiming failed tests.
- Marking claims as sticky, so that future failing builds or tests will keep the declared claim
- Ensuring claim propagate to following builds, if claim is not done on the last build
- Running a Groovy script on claim
- Integrating with Build Failure Analyzer plugin to describe claims using BFA knowledge base
- Integrating with Mailer plugin to notify claims by mail
The Claim plugin can be installed from any Jenkins installation connected to the Internet using the Plugin Manager screen.
You can then access the Manage Jenkins > Configure System > Claim section to configure global settings and default options for the plugin.
To allow claiming of failed builds, add a Allow broken build claiming post-build action to your project.
To allow claiming of failed tests, add a Allow claiming of failed test additional test report features to your test results report post-build action. Optional, check Display claim actions in test results table to allow direct claiming from the test results pages.
This feature is supported from v2.8 forward.
Given the Build Failure Analyzer plugin is installed and enabled, users can use failure causes stored in the BFA plugin knowledge base to describe their claim, and this cause will be stored with the claimed build or test.
To claim a build with a failure cause:
Upon claiming the build, the "Error" drop-down will be populated with all failure causes defined in the knowledge base. Selecting a failure cause will update the "Description" field with the cause description By default, selecting "None" will result in the default claim plugin behaviour. If there are already failure causes automatically detected by BFA, the claimed cause will be added to the list of identified problems. Claiming without a failure cause selected will result in no additional causes specified under "Identified Problems" The user may also input a claim reason, which is saved in the claim report as per default functionality.
The plugin provides the property allowBrokenBuildClaiming()
to allow claiming of failed builds.
Example:
pipeline {
options {
allowBrokenBuildClaiming()
}
A pipeline job needs to be configured with ClaimTestDataPublisher
as JUnit testDataPlublisher to allow claiming of failed tests.
Example:
junit testDataPublishers: [[$class: 'ClaimTestDataPublisher']], testResults: '**/target/*-reports/TEST*.xml'
To show claim actions directly on the test results page, the displayClaimActionsInTestResultsTable option can be added.
Example:
junit testDataPublishers: [[$class: 'ClaimTestDataPublisher', displayClaimActionsInTestResultsTable: true]], testResults: '**/target/*-reports/TEST*.xml'
As the plugin uses a post build action to allow claiming, build or tests marked as failed priori to enabling the plugin will not have any claim action proposed.