在Jenkins中,我有一个系统groovy脚本构建步骤。有没有办法取消长时间运行的脚本,或者在系统groovy脚本中有一些代码可以判断它的构建是否已被取消?
答案 0 :(得分:2)
当你取消构建时,Jenkins将中断正在运行脚本的线程。
因此,你可以手动check线程的中断状态,并在某些点上中止你的脚本,例如
if (Thread.currentThread().interrupted()) {
throw new InterruptedException()
}
或者你可以让Groovy通过在你的脚本中加入ThreadInterrupt注释来为你做这件事,例如
@groovy.transform.ThreadInterrupt
还要确保没有任何catch块会吞下InterruptedException。