使用什么工具进行自动夜间构建? [英] What tool to use for automatic nightly builds?

查看:106
本文介绍了使用什么工具进行自动夜间构建?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我公司中有几个正在处理的Visual Studio解决方案/项目,现在需要一个自动夜间构建方案.这样的方案需要能够检查SVN的最新版本,构建解决方案,创建适当的可下载文件(包括安装程序,文档等),并在出现错误和各种其他奇妙的事情时向开发人员发送电子邮件. .我应该为此使用什么工具或工具集?

I have a few Visual Studio Solutions/Projects that are being worked on in my company, which now require a scheme for automatic nightly builds. Such a scheme needs to be able to check the latest versions from SVN, build the solutions, create the appropriate downloadable files (including installers, documentation, etc.), send e-mails to the developers upon errors and all sorts of other nifty things. What tool, or tool-set, should I use for this?

几年前,我曾经使用FinalBuilder,对此我非常喜欢,但是我不确定它们是否支持夜间构建和电子邮件之类的功能.

I used to use FinalBuilder a few years ago and I liked that a lot but I'm not sure if they support such features as nightly-builds and email messages.

推荐答案

在我的工作中,我们使用CCNET,但它的签入构建比每晚都要多-尽管很容易为其中一个或两个进行配置.

At my work we use CCNET, but with builds on check-in more than nightly - although it's easily configured for either or both.

您可以非常容易地设置单元测试以在每个签入,FXCop测试以及一系列其他产品上运行.

You can very easily set up unit testing to run on every checkin as well, FXCop testing, and a slew of other products.

我还建议您选择 Team City 作为选择,因为它具有免费版本,并且报告和设置据报道要简单得多(对我来说确实不错).在到达付费窗口之前,它确实有大约20个团队成员/项目的限制.

I would also advise checking out Team City as an option, because it has a free version, and the reporting and setup is reportedly much simpler (it does look nice to me). It does have a limit of somewhere around 20 team members/projects, before it hits a pay-for window.

也就是说,我们从CCNET开始,现在已经增加了几种产品,太大了,无法在免费版本上查看Team City,并且对我们拥有的产品感到非常满意.

That said, we started with CCNET, and have grown several products too large to look at Team City on the free version and are very happy with what we have.

有助于CCNET的功能包括:

Features that help with CCNET include:

  • 基于XML的配置-您通常可以复制和粘贴大部分所需的内容.
  • 或多或少,您将能够将treesurgeon脚本作为构建脚本插入,并将CCNET指向可执行文件来运行编译.
  • 大量文档,并且非常容易设置nunit,ncover,fxcop等.
  • 任务栏应用程序,可以随时让您知道项目的状态,还可以触发电子邮件或保留具有相同信息的RSS feed.

但是我绝对会在每次签入时都运行CI构建-大多数情况下,它将在签入前运行单元测试,但应让CCNET服务器处理运行将依赖于项目的所有应用程序/程序集.我们正在检入的装配体,它们会重新构建,并在每次检入时都进行重新测试.

But I'd definitely go with running a CI build on every check-in - for the most part will run the unit tests before checking in, but let the CCNET server handle run any applications/assemblies that would have dependencies on the assembly we're checking in, and they get re-built, and re-tested on every checkin.

鉴于CCNET是免费的,并且花费很少的时间进行设置-我强烈建议您尝试并看看它是否适合您,然后从那里进行扩展.

Given that CCNET is free free and takes very little time to set up - I'd highly recommend just going for it and seeing if it suits you, then expanding from there.

(这里还有另一个线程,我在其中发布了几乎相同的内容/进行了一些改动-但其他一些评论也可能有帮助!

(There's another thread here where I posted pretty much the same/with a few alterations - but some of the other comments may help too! Automated Builds)

编辑以添加内容:您可以轻松地为CCNET设置自己的部署方案,并且有大量的博客帖子可以提供帮助,并且电子邮件通知实际上可以相当精细地设置,无论成功与失败, ,当它从成功变为失败等时.还内置了RSS,您甚至可以为其他系统设置自己的通知程序.

Edit to add: You can easily set up your own deployment scheme for CCNET, and there are a tonne of blog posts out there to assist, and email notifications can really be set up fairly granularly, either on all successes, all failures, when it changes from success to fail, etc. There's also built in RSS, and you could even set up your own notifiers for other systems.

这篇关于使用什么工具进行自动夜间构建?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆