我在Jenkins有一个插件,通过休息操作远程服务器 如何在构建中止时向服务器发送最后一个请求?那么,优雅地完成插件的工作?
我发现的唯一对“中止序列”的引用是this。 这让我觉得程序非常粗糙,并且在它终止孩子(我的插件)之前我无法捕获信号。
答案 0 :(得分:2)
我有类似的需求,我用PostBuildScript Plugin解决了这个问题。
我选择运行构建步骤,但您可以运行其他几个选项。非常好用。 无论构建如何结束(成功,失败或中止),我都必须运行一个脚本。它对我很有用。
我希望这会有所帮助。
答案 1 :(得分:2)
当构建中止时,抛出InterruptedException
。您可以像任何其他异常一样捕获它,不仅可以优雅地退出,还可以防止中止,如果您愿意的话。
在boolean perform()
方法中,设置
try {
... // Whatever your plugin does
}
catch (InterruptedException e) {
// Code to handle build being aborted.
}
语句,它将处理运行构建步骤时发生的任何中止。在catch
语句中,您可以再次抛出InterruptedException
以继续中止构建,或者只返回并让构建继续。