.NET、Java和其他语言的持续集成工具链相对而言比较清晰,但是C++市场似乎有很多不同的选择。
在这里,我指的CI“工具链”是指构建脚本、自动化测试、编码规范检查等方面的工具。
C++团队正在使用什么样的CI工具链呢?
.NET、Java和其他语言的持续集成工具链相对而言比较清晰,但是C++市场似乎有很多不同的选择。
在这里,我指的CI“工具链”是指构建脚本、自动化测试、编码规范检查等方面的工具。
C++团队正在使用什么样的CI工具链呢?
http://www.viewtier.com/products/parabuild/screenshots.htm
我们能够将各种Win/Mac/Linux QA工具与之集成,而且安装和维护非常容易:在每个平台上只需要一次点击即可完成安装,并且Web界面非常方便。另一个选择可能是buildbot。
它是用Python编写的,但不仅适用于Python应用程序。它可以执行任何脚本来完成构建过程。如果你看一下他们的成功案例,似乎有各种各样的语言。
Visual Build Professional是我最喜欢的工具,可以将其它工具整合在一起使用。当然,它只支持Windows操作系统,但可以与各种Visual Studio版本、测试工具、源代码控制工具、问题跟踪工具等集成使用。虽然这不是完整的堆栈,但至少是一个好的开始。
你好,
我曾经在一家承包公司工作时遇到了这个问题。
有一个人编写了工具,主要是shell脚本,用于:
我们无法找到任何商业可用的工具来完成这项任务,所以Charlie编写了bash shell脚本,并在HP-UX上运行。
谢谢,
Rob
就像在C++中似乎每个任务一样,我只是勉强支撑着持续集成。我的设置始于Eclipse。我将其设置为为我的项目生成make文件。我有ant脚本通过在适当的makefile上运行'make all'或'make clean'来执行整体构建任务。这些ant脚本是我的项目的一部分,当我添加新的构建配置或新的系统部件时,我必须更新它们。不过也没那么糟糕。
我使用CruiseControl来实际运行构建。每个项目(只有一个)都有自己的ant脚本,执行特定于构建的任务(复制工件,处理结果),调用项目ant脚本进行构建。
我必须使用cppunit进行测试,并使用我在某个地方找到的xslt文件处理结果。我还在每个构建上有错误的svn修订标签,因为我找不到合适的svn标记器。我能找到的只是半成品的几年前的代码和人们争论其他人做错了。
在我看来,CC是一个垂死的系统,但我没有找到更好的C++解决方案。再说,我也觉得C++是一种垂死的语言,所以也许问题比这更大。