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

自動的にトリガーされたジョブのリストを取得したいと思います。今私はすべての仕事のリストを持っています。Jenkins Groovy:何がトリガーされたジョブ

答えて

0

ビルドをトリガーしたCauseを入手できます。

Cause.LegacyCodeCause、Cause.RemoteCause、Cause.UpstreamCause、 Cause.UpstreamCause.DeeplyNestedUpstreamCause、原因:

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) 
} 

このクラスでは、あなたがビルドをトリガーかを判断することができる多くのサブクラスを有します.UserCause、 Cause.UserIdCause、SCMTrigger.SCMTriggerCause、 TimerTrigger.TimerTriggerCause

+0

ジョブがスケジュールを持っているかどうかを確認する方法? – xGreatx

+0

'TimerTrigger.TimerTriggerCause'? YounはAbstractProjectからすべてのトリガを 'getTriggers()'で得ることができます。 – yamenk

関連する問題