为什么buildbot * NOT *应该失败?
问题描述:
我试图修复非常复杂buildbot基础构建系统,一个具有显示绿色条的恼人习惯在他们“失败(1)”。为什么buildbot * NOT *应该失败?
的问题是,我们需要运行的ShellCommand构建步骤,当它返回非零未失败的整体构建的命令。
我们也有步骤,这确实显示了红色的详细信息页面上,但整个建设仍显示为绿色。
就知道“flunkOnFailure”没有设置在步骤本身在我Master.cfg中,默认是真实的。 (虽然这不是从手册页完全清楚我发现)
什么我需要做的(或取消),以确保当ShellCommand做整个创建失败?
这是在100%的Linux环境下运行。
非常感谢。
答
当您添加一步一个工厂(即f.addStep(your_step))应指定haltOnFailure =真使每当特定构建步骤返回失败整个构建失败。
答
flunkOnFailure
的默认值是False
的BuildStep
。各种子类覆盖此默认值,特别是ShellCommand
。我猜想特定的步骤是红色的,最后的结果是绿色,没有设置flunkOnFailure
。
在另一方面,它可能是haltOnFailure
没有设置,那么其它的步骤正在运行和成功,但构建的总体结果仍然是失败的。即使他们采取了失败的步骤,成功的步骤仍然是绿色的。特别是,瀑布页面的主体并不表示特定的构建是成功还是失败,尽管顶部的框表示最近的构建的结果。网格或近期构建页面将显示结果
是否有关于每步默认值的任何文档,或者您需要阅读源代码?在后一种情况下,哪些文件? – MarcH