在我正在进行的一个项目中,我们使用 shell 脚本来执行不同的任务。有些是运行 rsync 的 sh/bash 脚本,有些是 PHP 脚本。 PHP 脚本之一正在运行一些集成测试,这些测试输出到 JUnit XML、代码覆盖率报告等。
詹金斯能够根据以下条件将作业标记为成功/失败退出状态. In PHP,脚本以 1 退出如果在运行期间检测到测试失败。其他 shell 脚本运行命令并使用这些命令的退出代码将构建标记为失败。
// :: End of PHP script:
// If any tests have failed, fail the build
if ($build_error) exit(1);
In 詹金斯术语,不稳定的构建定义为:
如果构建成功,并且一个或多个发布者报告它不稳定,则该构建不稳定。例如,如果配置了 JUnit 发布者并且测试失败,则构建将被标记为不稳定。
在运行 shell 脚本时,如何让 Jenkins 将构建标记为不稳定而不是仅成功/失败?
现代 Jenkins 版本(自 2.26,2016 年 10 月起)解决了这个问题:它只是执行 shell 构建步骤的高级选项!
您可以选择并设置任意退出值;如果匹配,构建将不稳定。只需选择一个不太可能由构建中的真实进程启动的值即可。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)