从代码中可以看到,我想从数组中获取最后5个版本。
我问自己,如果数组中只有4或0个构建,将会发生什么情况。
我可能会得到一个空引用,并且詹金斯脚本将失败。
关于如何避免这种情况并且仅在我可以获得的构建数量(最多5个)上起作用的任何建议?
hi.getItem(projectname).getItem(jobname).getItem(branchname).getBuilds()[-5,-4,-3,-2,-1]{ build ->
def exec = build.getExecutor()
if (build.number != currentBuild.number && exec != null) {
exec.interrupt(
Result.ABORTED,
new CauseOfInterruption.UserInterruption(
"Aborted by #${currentBuild.number}"
)
)
println("Aborted previous running build #${build.number}")
} else {
println("Build is not running or is current build, not aborting - #${build.number}")
}
}
答案 0 :(得分:4)
使用builds.takeRight(5)
获取最多 5个最右边的元素