在詹金斯工作失败

cyb*_*mon 7 python jenkins

这个问题可能听起来很奇怪,但我如何让工作失败?

我有一个python脚本,使用scons编译少量文件,并作为jenkins工作运行.该脚本测试编译器是否可以构建x64或x86二进制文件,如果它无法执行其中一个操作,我希望该作业失败.

例如:如果我在64位系统上运行我的脚本并且无法编译64位.我可以在脚本中做些什么可能导致失败吗?

小智 7

重要的是,当 python 脚本抛出异常或非零异常代码时,运行 python 脚本是 jenkins 作业的最后一步。如果您在此之后运行其他任何操作,即使 echo“我的工作已完成”也会更改错误代码。

对我来说,以下失败了我的詹金斯工作

echo "exit(1)" >> test.py
python test.py
Run Code Online (Sandbox Code Playgroud)

当我执行以下操作时,我的詹金斯工作显示为成功

echo "exit(1)" >> test.py
python test.py
echo "This changes my exit code back to 0, which is successful"
Run Code Online (Sandbox Code Playgroud)


Y__*_*Y__ 6

如果脚本以非零状态退出,则构建将失败.

import sys
sys.exit(-1)
Run Code Online (Sandbox Code Playgroud)