我有一个詹金斯(Jenkins)工作,它使用execute shell作为构建阶段。我正在从此shell使用aws cli命令调用3个AWS Codepipeline执行。我的代码管道执行需要4-5分钟才能完成执行,但是jenkins作业在管道完成之前被标记为成功,即使管道在任何阶段都已失败。
是否有一种方法可以使jenkins的工作仅在代码流水线的执行完成后完成,并根据我的aws代码流水线的状态来标记詹金斯的工作成功/失败。
OR
根据我的aws代码流水线的状态,如何将詹金斯工作标记为成功/失败。
'start-pipeline-execution'是异步操作。您需要不断查询执行状态以了解结果。
在您的詹金斯(Jenkins)工作中,使用start-pipeline-execution启动管道后,您将需要继续使用get-pipeline-execution CLI调用[1]查询管道执行ID,并继续检查状态是否正常循环中的时间量(例如1小时)。当get-pipeline-execution返回status ='Succeeded'时,从Jenkins以0退出,如果为'Failed',则在Shell步骤中以-1退出以使Jenkins作业失败。
exit -1