【发布时间】:2015-11-30 13:55:34
【问题描述】:
在 jenkins 插件中,claim plugin 可以帮助声称有原因的失败工作。
在最新版本 (2.6+) 中,它能够运行全局 groovy 脚本,以便在声明更改时发出一些通知
但是我怎样才能在这个脚本中触发另一个工作呢?它应该传递重要的参数,如 jenkins 名称、内部版本号和失败原因。
【问题讨论】:
在 jenkins 插件中,claim plugin 可以帮助声称有原因的失败工作。
在最新版本 (2.6+) 中,它能够运行全局 groovy 脚本,以便在声明更改时发出一些通知
但是我怎样才能在这个脚本中触发另一个工作呢?它应该传递重要的参数,如 jenkins 名称、内部版本号和失败原因。
【问题讨论】:
最后我自己得到了答案,索赔插件是使用 post job action 攻击的,所以它可以像触发下游作业一样完成。请参阅下面的代码示例:
import hudson.model.*
def job = Hudson.instance.getJob('ClaimNotify')
def build = action.owner
def causeAction = new CauseAction(new Cause.UpstreamCause(build))
Hudson.instance.queue.schedule(job,0, causeAction)
您也可以在那里或在下游作业中传递参数以获取它。
在how-do-i-dynamically-trigger-downstream-builds-in-jenkins中查看类似的问题和解决方案
更多关于schedule功能的信息,可以查看jenkins javadoc
【讨论】: