关于构建过程:存在哪些工具链与C ++进行持续集成?

关于构建过程:存在哪些工具链与C ++进行持续集成?

What toolchains exist for Continuous Integration with C++?

.NET,Java和其他语言的持续集成工具链定义得比较好,但是C ++市场似乎有很多多样性。

通过CI"工具链",我特别指的是用于构建脚本,自动测试,编码标准检查等的工具。

什么是C ++团队用于CI工具链?


我们使用Parabuild实现了C ++跨平台持续集成基础架构

http://www.viewtier.com/products/parabuild/screenshots.htm

我们能够将各种Win / Mac / Linux QA工具与之集成在一起,并且非常容易安装和维护:在每个平台上都是一键式安装,并且网络界面非常方便。

在评估多个连续集成服务器时,主要问题是它们受Java偏见:另一方面,Parabuild非常适合C ++跨平台开发和QA工作流程。


另一个选择可能是buildbot。

它是用python编写的,但不仅限于python应用程序。它可以执行任何脚本来进行构建。如果您查看他们的成功案例,那么似乎有各种各样的语言。


Visual Build Professional是我最喜欢的用于将所有其他工具组合在一起的工具。当然,仅Windows,但它与Visual Studio的所有版本以及许多测试工具,源代码控制工具,问题跟踪器等集成在一起。不过,它仅是Windows。我知道这不是整个堆栈,但这是一个开始。


G'day,

实际上,我们在我之前签约的站点上遇到了这个问题。

一个家伙坐下来写了一些工具,主要是shell脚本,来

  • 每小时大约检查一次当前的代码库,并进行构建以检查其是否损坏,以及
  • 查看最新的良好构建并进行完整构建,并运行约8,000个回归测试。
  • 我们只是找不到任何可用于此目的的商业产品,因此Charlie坐下来用bash shell脚本编写了此文件,并且该文件正在HP-UX上运行。

    干杯,


    我们使用scons进行由中央构建服务器运行的持续集成。一些项目迁移到buildbot。

    我现在正在认真研究并考虑本博客中调查的解决方案。 Fowler在他的持续集成文章中提到ThoughtWorks偶尔会使用rake作为其构建脚本。


    与C ++中的所有其他任务一样,我只是在不断集成而已。我的设置从Eclipse开始。我将其设置为为我的项目生成make文件。我有ant脚本,它们通过在适当的makefile上运行" make all"或" make clean"来执行总体构建任务。这些ant脚本是我的项目的一部分,当我向系统中添加新的构建配置或新的片段时,我必须对其进行更新。不过还算不错。

    我使用CruiseControl实际运行构建。每个项目(所有项目)都有自己的ant脚本,它们执行构建特定的任务(复制工件,处理结果),并调用项目ant脚本进行构建。

    我必须使用cppunit进行测试,并使用在某处找到的xslt文件处理结果。由于找不到合适的svn标签,因此每个版本上的svn版本标签也错误。我所能找到的只是已经完成一半的旧代码,并且有人在争论其他人做错了什么。

    在我看来,CC是一个垂死的系统,但是我还没有找到C ++的任何更好的东西。再说一次,我也觉得C ++是一门垂死的语言,所以也许它比这还大。


    推荐阅读