在失败时禁用定期构建的首选方法是什么?快速搜索显示有一个Prerequisite构建步骤插件,但是构建失败,我需要完全禁用构建,直到手动干预。
感谢。
答案 0 :(得分:15)
好的,我想我找到了解决方案。
解决方案是安装Groovy Postbuild Plugin,它在Jenkins JVM下运行并公开公开Jenkins实例。因此,可以直接在Project配置中以编程方式禁用当前构建:
if (manager.build.result.isWorseThan(hudson.model.Result.SUCCESS)) {
manager.build.project.disabled = true
}
答案 1 :(得分:3)
项目状态页面上有一个“禁用项目”按钮。我通过HTTP POST消息模拟按钮点击,数据“Submit = \”禁用Project \“”这样
wget --post-data "Submit=\"Disable Project\"" ${JOB_URL}disable
直接从运行构建(项目)的bash脚本。整个代码看起来像这样
set +e
# Run test/build
# ....
if [ $? -ne 0 ];
then
wget --post-data "Submit=\"Disable Project\"" ${JOB_URL}disable
# Or you can use following to disable one job from another
# wget --post-data "Submit=\"Disable Project\"" http://<Server>/job/$JOB_NAME/disable
exit -1
fi
这是一个相当古老的问题,所以我猜Jenkins GUI中没有禁用/启用按钮。如果Jenkins受密码保护,您需要首先登录wget,将cookie存储在某个文件中,然后在第二个文件中添加cookie。