【问题标题】:Continuous Integration with Nant与 Nant 持续集成
【发布时间】:2010-09-16 07:24:47
【问题描述】:
我正准备第一次使用持续集成。我将使用 Nant 进行自动化构建和测试任务,并尝试找到合适的 CI 工具来轮询存储库并执行 Nant 脚本。
到目前为止,我大致研究了以下内容:
到目前为止,我的感觉是,由于大部分工作将由 Nant 完成,Draco 会很好,因为它应该很容易安装/设置。另一方面,Cruise Control 和 Hudson 可能会提供更好的报告选项。
在使用 Nant 进行构建和测试任务时,执行持续集成的最佳方式是什么?
【问题讨论】:
标签:
continuous-integration
build-automation
nant
automated-tests
【解决方案1】:
我们使用CruiseControl.NET 作为我们的 CI 服务器以及我们在 NAnt 中的完整构建系统。在过去的 5 年里,它运行得非常好。此后,我研究了其他替代方案,但未能找到任何令人信服的理由来转换。
CruiseControl.NET 对不同的源代码控制系统提供了惊人的支持。此外,我喜欢他们的应用程序的可扩展性,因为我们已经构建了一些集成到其中的系统。
【解决方案3】:
我不能代表列出的应用程序,但我是 buildbot 的忠实粉丝:
http://buildbot.net/trac
它将在任何运行 Python 的平台上构建/测试(因此,如果您的软件应该在多个操作系统上运行,每个操作系统都可以覆盖),它非常易于使用,并且具有极强的可扩展性。
【解决方案4】:
我建议使用 CruiseControl.NET 而不是普通的 CruiseControl,尽管我在这方面的经验有限。
【解决方案5】:
我不敢说哪个最好,但是 CruiseControl.NET 确实运行良好,尤其是基于 NAnt 的构建。不过,就我个人而言,它是我唯一使用过的。
【解决方案7】:
我们已经开始在我的公司使用 TeamCity,我必须说我对这款产品印象深刻。我们之前尝试过 CruiseControl.NET,但 TeamCity 更容易配置,而且配置更加透明,因为您可以从 Web GUI 控制几乎所有内容。
【解决方案8】:
正如其他人已经建议的那样,我会说TeamCity。
你可能还要等到本周末,因为他们的新版本(TC 4.0)将会发布(可能是今天,也可能是明天)...
【解决方案10】:
我们公司使用 Hudson 和 NAnt。从我的角度来看,它工作得很好。