Skip to end of metadata
Go to start of metadata

Plugin Information

View Claim on the plugin site for more information.

Older versions of this plugin may not be safe to use. Please review the following warnings before using an older version:

Allows users to take responsibility for failed builds and to comment on them. Shows up as a build badge (small icon in build history), so teammates can see who is working on what along with notes.

Claims may be made sticky to follow the user claiming the failure until the build is successful again.

To claim a build:

  • Ensure you are logged in, it doesn't work with anonymous accounts.
  • Configure jobs that should be claimable by adding an Allow broken build claiming post-build action.
  • When a build breaks, open its page and there will be a link to claim it, right under the Started by user bit.

Emails for assigning/claiming builds:
Send emails when builds are assigned or claimed by checking "Send emails when assigning/claiming builds" in the general System Configuration page. Enabling requires the mailer plugin.

Limitations

As the plugin uses a post build action to do its magic, it will not add anything to failed builds which were run prior to enabling the plugin (via the above mentioned post-build action).

Claimed build

Claimed shown in build history

 

Integration with Build Failure Analyzer plugin (from v2.8)

Users may claim additional information: given the Build-Failure-Analyzer(BFA) plugin is installed and enabled,
users can claim failure causes stored in the BFA knowledge base and keep the indication stored in the build.


The Claim menu when BFA is installed

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.

Limitations

 Upon upgrading the claim plugin, old builds that do not have BFA indications will not be able to be claimed with a failure cause. This can be fixed by rebuilding the job with BFA enabled.

 

Changelog

v2.15 (03 May 2018)

  • Added a link to the claimed test case in the claim mail when claiming a test JENKINS-42090

v2.14.1 (14 Feb 2018)

  • Fixed a Jenkins deadlock on startup in specific configurations JENKINS-49038

v2.14 (30 Jan 2018)

  • Groovy script is lost when upgrading the plugin JENKINS-49015
  • Fixed obsolete data message following field removal

v2.13.1 (07 Jan 2018)

  • Fixed claim message inversion between assignee and claimer

v2.13 (06 Jan 2018)

  • Added an option to prevent autorefresh when claiming (Experimental)
  • Allow propagating claims to following failed builds JENKINS-12437
  • Use initial claim date for sticky/propagated claims JENKINS-48037

v2.12 (30 Dec 2017)

  • Fixed a Null Reference Exception when migrating old data JENKINS-18809
  • Use a dedicated claim icon eveywhere JENKINS-6936
  • Made Build-Failure-Analyzer description text appear on form display, and be readonly JENKINS-44066
  • Render run description using the configured formatter in Claim Report screen JENKINS-42579
  • Made claim colum icon-size aware
  • Standardized claim messages & improved them (user link, use of display name)
  • Removed Claim Report broken rss links

v2.11 (24 Dec 2017)

  • Fixed a regression introduced in 2.10 preventing the plugin to start JENKINS-47972

v2.10 (8 Nov 2017)

  • Fixed an arbitrary code execution vulnerability JENKINS-43811
  • Added an option to sort users by their full name in the claim page JENKINS-47437
  • Fixed an Index Out of Bounds Exception when claiming a test failure JENKINS-44024

v2.9 (14 Nov 2016)

  • Fixed single quote failure introduced in 2.8 JENKINS-28722
  • Removed unused json2.js JENKINS-33078
  • Fix Class Cast Exception when claiming test JENKINS-33715
  • Support new version of build failure plugin
  • "Claim it" link for tests didn't work when BFA plugin isn't installed JENKINS-39538
  • Claiming tests isn't compatible with Jenkins 2.0 pipelines JENKINS-39537

v2.8 (14 Jan 2016)

v2.7 (12 May 2015)

  • Fixed compatibility with Jenkins Core 1.577 and newer JENKINS-27091

v2.6 (9 Mar 2015)

  • Claim stickiness default value is now a globally configurable JENKINS-27002
  • Added support for running a global groovy script whenever a claim is changed

v2.5 (8 Dec 2014)

  • You can now claim for other users than yourself JENKINS-7824

v2.3 (18 Nov 2013)

v2.2 (27 Mar 2013)

  • Added support for translations and added Chinese translation
  • Added new icon to make claim plugin more visible
  • All jobs are now visible in claim report JENKINS-16801

v2.1 (12 Feb 2013)

v2.0 (6 Feb 2013)

  • Store and display a date of when a claim was added.
  • Option to sticky claim test failures if the failure is "similiar"
  • Improved Matrix claim information

v1.7 (4 Maj 2010)

  • Show user names in claims instead of ids.
  • Support for claiming Matrix builds.

v1.6 (28 Nov 2009)

  • Updated claim plugin to match updated Jenkins API

v1.5 (17 July 2009)

  • Made sure that the claim plugin runs after all the other extensions that can change the build status run. (report)

17 Comments

  1. A nice enhancement would be to send an email to the "committers" when a user claims a failed build. This way people don't have to poll Hudson, to know when/if someone has accepted responsibility for the break.

  2. Fails on 1.270:

    Jan 9, 2009 10:35:06 AM hudson.util.CopyOnWriteList$ConverterImpl unmarshal
    WARNING: Failed to resolve class
    com.thoughtworks.xstream.mapper.CannotResolveClassException: hudson.plugins.claim.ClaimPublisher : hudson.plugins.claim.ClaimPublisher
            at com.thoughtworks.xstream.mapper.DefaultMapper.realClass(DefaultMapper.java:62)
            at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
            at com.thoughtworks.xstream.mapper.XStream11XmlFriendlyMapper.realClass(XStream11XmlFriendlyMapper.java:34)
            at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
            at com.thoughtworks.xstream.mapper.DynamicProxyMapper.realClass(DynamicProxyMapper.java:71)
            at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
            at com.thoughtworks.xstream.mapper.ClassAliasingMapper.realClass(ClassAliasingMapper.java:86)
            at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
            at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
            at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
            at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
            at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
            at com.thoughtworks.xstream.mapper.ArrayMapper.realClass(ArrayMapper.java:87)
            at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
            at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
            at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
            at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
            at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
            at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:38)
            at com.thoughtworks.xstream.mapper.CachingMapper.realClass(CachingMapper.java:53)
            at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.readItem(AbstractCollectionConverter.java:73)
            at hudson.util.CopyOnWriteList$ConverterImpl.unmarshal(CopyOnWriteList.java:151)
            at hudson.util.DescribableList$ConverterImpl.unmarshal(DescribableList.java:203)
            at hudson.util.XStream2$AssociatedConverterImpl.unmarshal(XStream2.java:117)
            at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:81)
            at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:55)
            at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:75)
            at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:59)
            at hudson.util.RobustReflectionConverter.unmarshallField(RobustReflectionConverter.java:234)
            at hudson.util.RobustReflectionConverter.doUnmarshal(RobustReflectionConverter.java:194)
            at hudson.util.RobustReflectionConverter.unmarshal(RobustReflectionConverter.java:145)
            at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:81)
            at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:55)
            at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:75)
            at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:59)
            at com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:142)
            at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:33)
            at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:931)
            at hudson.util.XStream2.unmarshal(XStream2.java:42)
            at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:917)
            at com.thoughtworks.xstream.XStream.fromXML(XStream.java:861)
            at hudson.XmlFile.read(XmlFile.java:103)
            at hudson.model.Items.load(Items.java:81)
            at hudson.model.Hudson.load(Hudson.java:1507)
            at hudson.model.Hudson.<init>(Hudson.java:403)
            at hudson.WebAppMain$2.run(WebAppMain.java:160)

  3. Unknown User (slwnix)

    Hello.

    I've tried to install Claim Plug-In 1.1 on Hudson 1.272 (jetty6). After Hudson restart Claim plug-in failed to load. Error log:

    SEVERE: Failed to load a plug-in claim
    hudson.util.IOException2: Failed to initialize
    	at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:187)
    	at hudson.PluginManager.<init>(PluginManager.java:118)
    	at hudson.model.Hudson.<init>(Hudson.java:446)
    	at hudson.WebAppMain$2.run(WebAppMain.java:160)
    Caused by: java.lang.NoSuchMethodError: hudson.model.View: method <init>()V not found
    	at hudson.plugins.claim.ClaimedBuildsReport.<init>(ClaimedBuildsReport.java:25)
    	at hudson.plugins.claim.PluginImpl.start(PluginImpl.java:15)
    	at hudson.ClassicPluginStrategy.startPlugin(ClassicPluginStrategy.java:195)
    	at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:184)
    	... 3 more
    
  4. Our team doesn't have authentication. We all use anonymous.

    It woudl be nice if the user isn't logged in, to allow the user to type in his/her name to claim a broken build.

  5. what happen if I install Claim Plugin after running Hudson for a while, i.e. I already have some failed/broken builds, look like even I installed claim plugin and enabled "Allow claim broken build", it doesn't work for previous failed builds.

    is this expected behavior?

  6. I just wrote a small groovy script to enable build claiming on every jobs in one go. http://wiki.jenkins-ci.org/display/HUDSON/Allow+broken+build+claiming+on+every+job

    Cheers

  7. I also  think, (as Todd Hicks pointed out above), that email notification to the commiters when sb. claims a broken build would be really helpful.

  8. +1 for email notification!

    Thanks for a nifty plugin. Love it!

  9. Very useful plugin, thank you.

    Here's a way to send a reminder email when there are unclaimed failures:

    1. Install the script trigger plugin and email-ext plugin.
    2. Create a job triggered by the script trigger and using the email-ext to send an email on success
    3. Set the trigger schedule as required
    4. Set the trigger exit code to 1
    5. Set the trigger script as below
    6. Configure the email subject etc

    A simple shell script to check for unclaimed builds. Change host to match your deployment:

    #!/bin/sh
    curl -v http://<host>/jenkins/claims/ | grep 'unclaimed' > /dev/null
    if [ $? == 0 ];
    then
     exit 1
    else
     exit 0
    fi

    So, on the schedule you set, the script will look at the "claims" page and if the word "unclaimed" appears it will exit with code 1, which causes the script trigger plugin to trigger the build, which will send the email.

    You will probably want to set the schedule so as to avoid filling inboxes with repeated emails outside working hours, eg "30 8-16 * * 1-5" will do it half past the hour from 8.30 to 16.30, Monday to Friday.

  10. Very useful plugin. Thanks.

    One small possible visual improvement to have more stand out icon for self claimed jobs would be nice.

  11. Upvote the aforementioned email functionality (email configuration when somebody claims a break).

  12. Hi guys,

    is there any way to get the report of claimed build with a REST call?

    Actually would be great to have the claimed field inside the Json API (http://<host>/api/json?tree=)

    Thanks!

    Luigi

    1. Would be good to be able to get a report of *failing tests* claimed with a REST call, would be great if it could be part of the test results IMHO.

  13. Can the claim plugin prevent auto-refresh when filling out a claim if it has been enabled?

  14. It would be great if you could specify a parameter on the build history URL (e.g. jenkins:8080/job/SomeJob/106/claim) that would jump you right into the process of claiming the failed build.  Then it would be easy to place this URL in the build notification emails.

  15. Is there any chance that the code can be updated to get rid of the security advisory?  My company would like to use this plugin, however, they will not approve because of the advisory (and they believe the code is not maintained).  Thanks.

    1. 2.10 is safe, as you can see by clicking the warning sign on https://plugins.jenkins.io/claim.

      For some reason this page is not updating this info.