【问题标题】:How to prevent builds when another build fails?当另一个构建失败时如何防止构建?
【发布时间】:2011-02-10 13:35:51
【问题描述】:
我在 Hudson 中为单个解决方案创建了许多构建配置(例如发布、调试、测试)
当我犯错时,我会收到 1 封针对每个构建配置的构建失败电子邮件。
我想收到一封电子邮件。
我想如果我可以让一个构建依赖于另一个构建的成功或失败,我会收到更少的电子邮件。
怎么做?
顺便说一句:我使用 MsBuild、Subversion 和 NAnt
【问题讨论】:
标签:
continuous-integration
hudson
build-server
【解决方案1】:
听起来您对配置为始终构建的同一组源代码有多个作业(构建配置)。正如其他人建议的那样,您可以使用构建触发器将这些作业链接在一起。但是,如果所有作业都在每次提交时运行,我建议将这些作业组合成一个包含多个步骤的作业。这样,当一个步骤失败时,整个构建都会失败,不会花费不必要的 Hudson 循环,并且您不会收到多余的电子邮件。要向构建添加步骤,请单击“添加构建步骤”并选择“调用 Ant”(或您希望它执行的任何其他操作)。
【解决方案2】:
您可以使用构建触发器“在构建其他项目之后构建”来将项目彼此向上或向下放置。然后,您通常让较轻的构建先进行(如简单编译)。