查询使用Rebuild Plugin触发的Jenkins作业的参数?

时间:2018-12-16 14:11:47

标签: groovy jenkins-plugins jenkins-cli

我使用Jenkins CLI每周为一周中的工作创建报告。

def deployOnK8sJob = Jenkins.instance.getItemByFullName('<JOB>')
def jobBuilds=deployOnK8sJob.getBuilds().byTimestamp(System.currentTimeMillis()-numberOfHoursBack*60*60*1000, System.currentTimeMillis())

println build.number + "  " + build.actions[0].parameters[0].value + "  " + build.actions[0].parameters[1].value + "  " + build.timestamp.format("dd/MM/yyyy HH:mm:ss.SSS") + "  " + build.result + "  " + build.actions[0].parameters[3].value + "  " + build.actions[0].parameters[4].value

这对我来说很好。但是,如果发生构建故障,并且有人使用重新构建插件再次触发了作业,则build.actions[0].parameters[x]不可用。

我有一个收集这些报告的普通脚本。

1 个答案:

答案 0 :(得分:0)

我认为在使用Rebuild插件时,build.actions[0].parameters[x]不可用,因为在这种情况下,build.actions[0]不是来自类ParametersAction而是来自类CauseAction说出来。

因此,我建议使用build.getAction(ParametersAction.class)代替build.actions[0]