Build Trigger Badge

This plugin displays icon(s) representing the cause(s) of a build directly in the build history. It lets you quickly know which cause triggered a build.Without this plugin, you may sometimes wonder what triggered a particular build shown in the build history.
To know it, you have to open each link separately, which can be cumbersome.

Note: after installation, the plugin will currently only add icons on new builds. Old builds won't have the indicator.

Screenshot

[TABLE]

Wait, this does not work, I see a question mark icon for my builds!

This means the cause of the build is not yet supported by the plugin. It's pretty easy to add one, we basically only need the fully qualified name (FQN) of that build cause, and an icon (smile).
Finding out that FQN is pretty easy. You can simply use the Jenkins API through your browser.

Open the build page, and suffix it with /api/xml?xpath=//cause&wrapper=causes. To give something like: _https://yourjenkinsserver/job/somejob/15/api/xml?xpath=//cause&wrapper=causes_

Then, paste that output in a JIRA issue explaining your case. Even better, filing a pull-request would be great (smile).

Changelog (note: the date format below is the logical one, not the american one (wink))

Version 2.10 - 21 Dec 2018 

Version 2.9 - 06 Dec 2017 

Version 2.8 - 17/02/2017

  • Support the branch-api plugin's jenkins.branch.BranchEventCause.

Version 2.7 - 20/11/2016

Version 2.6 - 15/10/2016

  • Support the XTrigger Plugin Cause. Requested through JENKINS-38932

Version 2.5 - 07/10/2016

Version 2.4 - 04/10/2016

Version 2.3 - 17/06/2016

Version 2.2 - 10/10/2015

  • JENKINS-27225 Workflow plugin support (now Workflow jobs also have the BuildTriggerBadge icons)
  • Text for column changed from "Last Build Trigger" to just "Cause" so that it's short. Particularly important/useful when using the "icon only mode" available since 2.1

Version 2.1 - 01/09/2015

Pull-requests Based Release (smile) :

Version 2.0 - 06/02/2015

Version 1.4 - 31/01/2015

Version 1.3 - 24/09/2014

  • Some french translations fixes/adjustments
  • add badge for general Git commit hook cause (thanks Domi)

Version 1.2 - 29/04/2014

Version 1.1

  • Added a column showing cause and short description of the last build -> thanks to Łukasz Jąder (ljader) : pullrequest #3
  • Added periodic-reincarnation-plugin cause -> thanks to Mirko Friedenhagen (mfriedenhagen) : pullrequest #4
  • Upgrade required core version to current Jenkins LTS version (1.509.2)

Version 1.0

  • Added M2Release cause as UserCause -> thanks to Christian Apel (christianapel) : pullrequest #1
  • Added GitPush cause + Fall back on superclass if a cause does not have a badge -> thanks to James Clarke (jrtc27) : pullrequest #2

Version 0.9

  • JENKINS-15474 : filter duplicates of the same Cause type and the same description

To remove duplicates of the same Cause type and the same description (see JENKINS-15474), you can apply this groovy script :

import org.jenkinsci.plugins.buildtriggerbadge.BuildTriggerBadgeAction;

for(item in Jenkins.instance.items) {
  for(build in item.builds) {
    def set = new HashSet();
    for(action in build.badgeActions) {
      if(action instanceof BuildTriggerBadgeAction) {
        def filter = action.cause.class.canonicalName + "_" + action.cause.shortDescription
        if(set.contains(filter)) {
        println "removing duplicates BuildTriggerBadgeAction in build " + build.id
            build.actions.remove(action)
            build.save()
        }
        else {
            set.add(filter);
        }
      }
    }
  }
}

It's not necessary to apply this script for versions >= 0.9.

Version 0.8

  • JENKINS-15307 : fix images URL when Jenkins is running as non-context root (deployed as a tomcat webapp, for example).

Version 0.7

  • Added a global option to de/activate the plugin

Version 0.6

  • Added support for builds triggered from command line using jenkins-cli.jar (CLICause) and for remotely triggered build (RemoteCause).

Version 0.5

  • initial release. 
    • Shows icons for builds triggered by user, timer, scm or upstream cause. Any other cause will currently show a question mark.