我们正在尝试建立持续集成。我们的软件套件由20个C#解决方案组成。对于一些项目,单元测试(NUnit)已经可用。我们希望自动化构建和测试流程,并尽早获取有关突破性变化的信息。持续集成工具的经验
最近,我试图用哈德森这样做。在通过网络进行大量搜索之后,可以解决一些问题,并进行一些试验和错误。
现在,一个错误使我们无法领先:当然,我们的解决方案共享一些组件。当共享组件发生变化时,我们不希望构建过程在第一次失败后停止 - 我们想知道所有被破坏的项目。这不能由Hudson处理,也可以在使用“参数化触发器插件版本2.4”(它首先完成完成后开始下一个项目,并在构建失败后失败,然后,即使电子邮件通知未发送,之后,根本没有下游项目开工 - 即使在成功的上游项目中也是如此!)。
由于哈德森迄今为止的经历相当令人失望,我们考虑采取不同的系统。
可以从您的积极经验推荐一个持续集成工具,它的作用:
- 集成与Subversion(包括用于获取源代码和触发编译)
- 开始的MSBuild(如Windows命令行)
- 触发进一步的项目,无论在上游项目失败的(必须这样做!)
- ,通知当构建失败
- 开始单元测试与电子邮件NUnit(例如命令行)
- 通过电子邮件通知时,一个单元测试失败
- 在构建/测试环境的其他计算机协同工作部署上的其他系统/测试
- 社会支持是
更新: 我试过詹金斯。无论上游项目出现故障,它确实会触发进一步的构建。还没有测试过最后两点。
我不知道如何有帮助这可能是,但最让我知道,做.NET的企业,使用[TeamCity的(http://www.jetbrains.com/teamcity/)为做CI。显然,您需要将其配置为适合您的需求,就像其他任何构建服务器一样。 – Augusto