问题:jenkins里配置了多个执行shell,且有后续的执行job任务。但其中一个Execute shell执行失败了导致后续的shell都不执行了
而这个失败的shell并不是一定要执行
解决方法:
Execute shell点击【高级】,在展开的Exit code to set build unstable中输入1
这时如果该shell执行失败了,jenkins的执行结果将不是failure,而是unstable
如果后续有要执行的JOB,根据当前build结果决定是否要触发时,可以选择Stable or unstable but not failed,这样jenkins执行success或unstable都可以继续执行下一个JOB了
举例如下:
有两个Execute shell,第一个shell是有问题的,cd的路径不存在
在未设置高级里面的Exit code to set build unstable时,执行结果如下:
只执行了第一个shell,且jenkins执行结果为Finished: FAILURE(红色)
设置了Exit code to set build unstable=1后,执行结果如下:
及时第一个shell执行失败了,第二个shell也进行了执行,且jenkins执行结果为Finished: UNSTABLE