2017-12-05 2 views
0
Jenkins.instance.getAllItems(AbstractProject.class).each {it -> 
println it.fullName 
println it.getLastBuild().getTime() 
} 

Ich möchte eine Liste von Jobs automatisch ausgelöst bekommen. Jetzt habe ich eine Liste aller Jobs.Jenkins Groovy: Was ausgelöst Job

Antwort

0

Sie können die Cause, die den Build ausgelöst hat, erhalten.

Jenkins.instance.getAllItems(AbstractProject.class).each { 
    hudson.model.Cause cause = it.getLastBuild().getCause(hudson.model.Cause.class) 
    println "Is triggered by user: " + (cause.class == hudson.model.Cause.UserIdCause.class) 
} 

Diese Klasse hat viele Unterklassen, die Sie können Sie bestimmen, was die Build ausgelöst:

Cause.LegacyCodeCause, Cause.RemoteCause, Cause.UpstreamCause, Cause.UpstreamCause.DeeplyNestedUpstreamCause, Ursache .UserCause, Cause.UserIdCause, SCMTrigger.SCMTriggerCause, TimerTrigger.TimerTriggerCause

+0

Wie zu überprüfen, ob Auftragszeitplan hat? – xGreatx

+0

'TimerTrigger.TimerTriggerCause'? Sie können alle Trigger aus dem AbstractProject mit 'getTriggers()' holen – yamenk

Verwandte Themen