自动化每日构建的最佳方法
好的,所以我们都知道每日构建是项目的心脏,但是自动化该项目的最佳方法是什么?
我们有Perl脚本来包装我们的管道,其中包括ClearCase,VS2005(C ++),Intel FORTRAN,Inno安装程序。我们在UNIX上使用cron作业来调度构建,并托管一个简单的Apache Web服务器来查看和监视构建。总而言之,它相当复杂,我想知道人们使用的最好的现成解决方案是什么?
是的,我确实说过FORTRAN有时无法转义,它可以正常工作,对于一些经过验证的,可以正常工作的FEA代码,做一个巨大的重新实现项目毫无意义。
解决方案
回答
我们使用TeamCity,但是它是一个简单的C#/ Java开发,也许管道可以通过它可以驱动的脚本来完成?
回答
我们正在实施CC.Net。到目前为止,它似乎很适合模型。
开箱即用,它提供了自动构建,结果跟踪和通知功能。我不确定内置监控的详细程度。
回答
对我来说,我听到的一个新功能很不错,那就是哈德森也支持MSBuild。
回答
我已经成功使用Visual Build Pro。
回答
有许多专门用于处理此问题的工具:
- 巡航控制
- 哈德森
- 连续体
这些工具对最常见的构建类型具有开箱即用的支持。它们都还支持某种"运行此脚本"类型的构建过程。
最后,我们应该使用更好的构建工具(MSBuild,Ant,Maven,Make等),并可以在其中使用自定义脚本填补其他工具的空白。自动化构建可以按正确的顺序调用它们。
回答
CC.NET非常强大。使用它,并对此感到非常高兴。甚至系统托盘中的状态图标。这是一个很小的细节,但它为我们提供了项目"健康"的良好概述。看到红色时,我们会立即有动力去修复测试。
现在,我们使用一系列自编写的脚本。由于我们编写Python,编译是不存在的,因此唯一的问题是运行测试。
回答
如果我们使用的是Visual Studio,请确保签出Team Foundation Build,以查看它是否适合情况。
看起来Buck Hodges在VS 2008版本上的博客文章也是很好的资源。
回答
这是我们发现的最佳资源,可帮助我们选择持续集成工具。我们已经在此页面上评估了5或者6种工具。
http://confluence.public.thoughtworks.org/display/CC/CI+Feature+Matrix