我遇到了Jenkins继续进行后续构建步骤的问题,即使先前的构建步骤失败也是如此。这是为了设置Jenkins自由式作业。
我遇到问题的构建步骤是“触发/调用其他项目构建”步骤,我选择/选中“阻止直到触发的项目完成构建”并设置父作业将构建结果标记为与触发的作业相同。
所以说我使用上述选项按顺序安排Job_1,Job_2和Job_3。 Job_1通过正常,然后Job_2失败。在Jenkins日志中,它显示Job_2失败并将父作业标记为失败。但是,即使将自己标记为失败,父作业仍会继续到Job_3。
以下是Jenkins控制台输出的示例;注意Job_2如何失败并且构建结果被更改为失败,但是1秒之后,即使构建已经标记为失败,Jenkins仍然会踢Job_3:
12:34:54 Waiting for the completion of Job_1
12:48:44 Job_1 #7 completed. result was SUCCESS
12:48:44 Build step 'Trigger/call builds on other projects' changed build result to SUCCESS
12:48:45 Waiting for the completion of Job_2
18:18:44 Job_2 #169 completed. result was FAILURE
18:18:44 Build step 'Trigger/call builds on other projects' changed build result to FAILURE
18:18:45 Waiting for the completion of Job_3
18:38:25 Job_3 #180 completed. result was SUCCESS
答案 0 :(得分:0)
事实证明问题在于触发器参数化构建插件。出于某种原因,他们认为继续执行后续构建步骤是个好主意,即使阻塞调用的构建步骤失败并调用调用父作业失败。
看起来我必须自己做事或转到Bamboo ......