如果.sh文件执行期间出错,则Jenkins构建未标记为失败

时间:2016-10-27 16:13:01

标签: bash shell jenkins

Jenkins作业包含执行shell步骤,其中包含以下命令:

scp file.zip deploy@host.name:/home/deploy/app.zip

如果' file.zip'不存在构建明显失败。

然后我使用相同的命令创建shell脚本文件,比如deploy.sh,并将Jenkins中的Execute shell命令更改为:

./deploy.sh

在这种情况下,如果' file.zip'不存在控制台输出包含错误消息,但构建标记为成功。

在这种情况下,如何将构建标记为失败?

1 个答案:

答案 0 :(得分:0)

默认情况下,Jenkins使用/ bin / sh -xe和-x将打印每个命令。另一个选项-e,这会导致shell在任何命令以非零退出时立即停止运行脚本(如果有的话)命令失败)退出代码。

所以通过添加#!/ bin / sh将允许你执行没有选项。

使用scp file.zip deploy@host.name:/home/deploy/app.zip

执行echo $?后,您必须知道它返回了哪些代码