是否有 CI 服务器软件可以完成所有这些工作?
Posted
技术标签:
【中文标题】是否有 CI 服务器软件可以完成所有这些工作?【英文标题】:Is there CI server software that can do all of this? 【发布时间】:2010-03-11 06:06:49 【问题描述】:我正在尝试组建一个持续集成服务器,它将执行以下操作:
-
使用颠覆
使用 NUnit 测试(在失败的测试中构建失败)
使用 partcover(基于
针对 FxCop 运行代码(根据 FxCop 警告构建失败,给定设置)
针对 StyleCop 运行代码(根据 StyleCop 警告构建失败,给定设置)
不那么重要:
-
能够从 sln 文件运行
能够发布应用程序(已为项目设置 ClickOnce)
我现在正在使用 TeamCity,它似乎没有做 3 或 5,而且它没有最新 NUnit 的跑步者。
从 hudson 拥有的插件列表中,它看起来可以执行除 3 之外的所有这些(以及不那么重要的请求)。我考虑过为 hudons 编写一个插件来使用 partcover,但这增加了设置构建服务器的时间。
【问题讨论】:
FWIW,CruiseControl.Net 可以做 #1-3 @Chris Missal:它可以做 1-2 个不重要的事情吗?我愿意为操作系统项目做出贡献,如果它所需要的只是 fxcop/stylecop 的添加(因为这主要是我最近编写的所有代码),那么为 .NET 项目做出贡献会更容易。跨度> 【参考方案1】:NAnt 可以用作构建脚本,它将构建您的项目,然后执行 NUnit 和 FXCop。
我在工作中使用的另一个选项是为 MSBuild 创建一个构建脚本并使用支持运行 FXCop 和 NUnit 等的 MSBuild Community Tasks。
所以对于我的设置,CCNet 从 SVN 中提取源代码,然后使用主构建文件调用 MSBuild。它在那里构建项目,运行 NUnit、NCover、FXCop、StyleCop 等,并合并结果,然后显示在 CCNet 网页上。还可以设置每个任务,因此如果失败则构建失败。
我没有使用过 TeamCity,但应该有办法下载源代码,然后运行 MSBuild 或 NAnt 构建脚本,然后由它处理构建步骤。
【讨论】:
【参考方案2】:如果它从 sln 文件运行,它就不是一个持续集成服务器。也许您正在混合构建工具和持续集成。今天的许多 CI 服务器除了运行为其他工具(如 NAnt 或 Maven)制作的构建脚本之外什么都不做。如果您正在寻找它,请先查看 NAnt。 NAnt 能够构建和执行其他工具,如 FXCop(使用 NAntContrib 库)。您使用 CI 服务器定期运行构建脚本。
【讨论】:
以上是关于是否有 CI 服务器软件可以完成所有这些工作?的主要内容,如果未能解决你的问题,请参考以下文章
Docker最全教程之使用Tencent Hub来完成CI(九)