使用如下shell脚本构建一个自由式jenkins作业
CLIENT_CHANGED=# some logic for setting this
if [[ $CLIENT_CHANGED == false ]]
then
# abort build if no changes to client code
exit 0
fi
字符串exit 0
实际上并没有停止构建。如果我使用exit 1
,它会停止,但是构建被设置为失败,这是我不希望的。
这里的总体目标是,如果git中的某个目录在最近一次提交中没有被修改,则停止构建。如果有其他方法可以实现这一点,我愿意接受建议。
1条答案
按热度按时间kmbjn2e31#
您可以使用
returnStatus
选项将脚本的退出代码设置为一个变量。然后在脚本的后面,您可以通过error()
函数以选择的构建状态退出。不幸的是,您不能使用SUCCESS
过早退出(它只会导致失败状态),但您仍然可以使用ABORTED
。下面是一个示例管道脚本,希望能演示这是如何工作的:
字符串
参见:
======================
对于自由式构建,您可以通过使用shell脚本构建步骤附带的“退出代码以设置构建不稳定”选项来实现非常相似的功能。只需确保选择的退出代码不是0。
的数据
当
$CLIENT_CHANGED == false
时,上述步骤将给予以下输出:型
当
$CLIENT_CHANGED == true
:型