gpt4 book ai didi

unit-testing - 如何仅在特定错误退出值(0 除外)上将 Jenkins 构建标记为成功?

转载 作者:行者123 更新时间:2023-12-04 02:56:21 25 4
gpt4 key购买 nike

当我运行 Execute shell构建步骤以执行脚本,该脚本返回 0 , Jenkins将构建标记为 SUCCESS , 否则将其标记为 FAILURE这是预期的默认行为 0表示没有错误,任何其他值都表示错误。

有没有办法将构建标记为 SUCCESS仅当返回值匹配除 0 之外的特定值时(例如 123 ...)?

PS:如果你想知道我为什么要寻找它,这将允许我对 Jenkins 本身进行单元测试,因为我的脚本被编写为根据各种因素返回不同的退出值,从而允许我期望某些值取决于关于某些设置错误,并确保我的整个 Jenkins 集成都能解决这些问题。

最佳答案

好的,我继续 IRC #jenkins并且没有人知道根据特定退出代码设置特定作业状态的插件:( 我设法通过创建一个 Execute shell 步骤来完成我想做的事情,步骤如下:

bash -c "/path/to/myscript.sh; if [ "\$?" == "$EXPECTED_EXIT_CODE" ]; then exit 0; else exit 1; fi"
-在 bash -c下运行脚本允许捕获退出代码并防止 Jenkins当退出代码不同于 0(它通常会这样做)时停止构建执行。
- \$?被解释为 $?在脚本执行之后并代表其退出代码。
- $EXPECTED_EXIT_CODE是我的工作参数之一,它定义了我期望的退出代码。
- if语句简单地执行以下操作:如果我得到预期的退出代码,以 0 退出,以便将构建标记为 SUCCESS , 否则以 1 退出,以便将构建标记为 FAILURE .

关于unit-testing - 如何仅在特定错误退出值(0 除外)上将 Jenkins 构建标记为成功?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13550999/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com