32

Continuous Integration toolchains for .NET, Java, and other languages are relatively well defined, but the C++ market seems to have a lot of diversity.

By CI "toolchain" I specifically mean tools for the build scripts, automated testing, coding standards checking, etc.

What are C++ teams using for CI toolchains?

4

6 に答える 6

7

Parabuildを使用してC++クロスプラットフォーム継続的インテグレーションインフラストラクチャを実装しました

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

あらゆる種類のWin/Mac / Linux QAツールを統合することができ、インストールと保守が非常に簡単です。すべてのプラットフォームにワンクリックでインストールでき、Webインターフェイスは非常に便利です。

いくつかの継続的インテグレーションサーバーを評価する際の主な問題は、それらがJavaに偏っていることでした。一方、Parabuildは、C++クロスプラットフォーム開発とQAワークフローにうまく適合します。

于 2010-12-30T11:14:06.730 に答える
7

別のオプションはbuildbotかもしれません。

これは Python で書かれていますが、Python アプリだけのものではありません。ビルドを行うための任意のスクリプトを実行できます。彼らのサクセスストーリーを見ると、多種多様な言語があるように見えます。

于 2009-06-11T15:18:45.463 に答える
2

Visual Build Professional は、他のすべてのツールをまとめるための私のお気に入りのツールです。もちろん、Windows のみですが、Visual Studio のすべてのフレーバーと、多数のテスト ツール、ソース管理ツール、課題トラッカーなどと統合されてます。ただし、Windows のみです。それがスタック全体ではないことはわかっていますが、それは始まりです。

于 2008-08-25T12:26:19.023 に答える
1

G'day、

私が以前契約していたサイトで実際にこの問題に直面しました。

ある男が腰を下ろし、ツール、主にシェルスクリプトを次のように作成しました。

  1. 現在のコードベースを1時間ごとにチェックし、ビルドを実行して、壊れているかどうかを確認します。
  2. 最新の優れたビルドを確認し、完全なビルドを実行して、約8,000の回帰テストを実行します。

これを行うために市販されているものが見つからなかったため、チャーリーは座ってbashシェルスクリプトでこれを記述し、HP-UXで実行していました。

乾杯、ロブ

于 2008-08-26T13:04:30.777 に答える
0

C++ の他のすべてのタスクと同様に、私は継続的インテグレーションにかろうじて足を引っ張っています。私のセットアップはEclipseから始まります。プロジェクトのメイクファイルを生成するように設定しました。適切なメイクファイルで「make all」または「make clean」を実行することにより、全体的なビルド タスクを実行する ant スクリプトがあります。これらの ant スクリプトは私のプロジェクトの一部であり、システムに新しいビルド構成または新しい部分を追加するときに更新する必要があります。とはいえ、それほど悪くはありません。

実際にビルドを実行するには、CruiseControl を使用します。各プロジェクト (すべて 1 つ) には、ビルド固有のタスク (アーティファクトのコピー、結果の処理) を実行する独自の ant スクリプトがあり、プロジェクトの ant スクリプトを呼び出してビルドを行います。

テストには cppunit を使用し、どこかで見つけた xslt ファイルで結果を処理する必要がありました。また、適切なsvnラベラーが見つからないため、各ビルドに間違ったsvnリビジョンラベルがあります。私が見つけることができるのは、半分完成した何年も前のコードと、他の人が間違っていると主張している人だけです。

CC は死にかけているシステムのように見えますが、C++ に適したシステムは見つかりませんでした。繰り返しになりますが、C++ は死につつある言語のようにも感じます。

于 2009-06-11T12:19:58.890 に答える
0

中央のビルド サーバーによって実行される継続的な統合には、sconsを使用しました。一部のプロジェクトはbuildbotに移行されました。

私は今、rakeに取り掛かり、このブログで調査した解決策を検討しています。Fowler は、彼の継続的インテグレーションの記事で、ThoughtWorks がビルド スクリプトに rake を使用することがあると述べています。

于 2009-11-12T23:12:17.123 に答える