複数のプロジェクト用の言語に依存しない自動ビルドおよびテストサーバー[終了]

StackOverflow https://stackoverflow.com/questions/1200721

質問

リリーステストを容易にするために、さまざまなアーキテクチャでソフトウェアプロジェクトを自動的にビルドおよび(ユニット)テストするシステムを探しています。制約は次のとおりです。

  1. ビルドするコードは、Python、Java、Cなどの複数の言語で記述されています。
  2. いくつかの異なる展開アーキテクチャがあります。
  3. 複数のプロジェクトがあり、それらを個別に構築およびテストしたい。
  4. ソース管理システムはSubversionであり、システムと統合する必要があります。
  5. ソリューションは理想的にはオープンソースでなければなりません。

見てきたもの:

  • 工房 + Continuum :ある意味では素晴らしいが、Java中心であり、Pythonのサポートは限定的または存在しない。

  • Buildbot :これは、サポートしていないことを除いて、必要なほぼすべての機能を提供します。複数のプロジェクト。これは私たちにとっては契約違反となります。

何をお勧めしますか?何を使用していますか

役に立ちましたか?

解決

Hudson をご覧になりましたか? Java中心のツールであるにも関わらず、.Netプロジェクトで多くの成功を収めています。 Subversionをサポートし、多くの異なる言語で動作できるようにするアクティブで多様なプラグインコミュニティを持っています。オープンソースであり、多くのプラットフォームで実行されます。構成と管理が比較的簡単であることがわかりました。

他のヒント

TeamCity をご覧ください。私たちにとって魅力的です。

buildbotから離れてから、cruisecontrolを使用してきましたが、ある程度は満足しています。私の現在のプロジェクトは、C ++およびruby(いくつかのc拡張付き)を複数のアーキテクチャに追加した場合、不満なのは、ほとんどの機能にAntが必要なことです。そして現在、ccの単一インスタンスは約40の異なるプロジェクトを構築しています。構築フェーズは、ユニットテストの実行、いくつかの機能テスト、コードカバレッジの取得とそれらのレポート作成、パッケージデータベースの更新、irc統合、ソフトウェアpackaqgeの作成とリポジトリで構成されています更新(debian)

唯一の不満は、より洗練された機能のほとんどが(少なくともccビルドループ内の場合)antを使用してビルドすることを必要とすることです。

hudsonも評価しましたが、cruisecontrolよりも多少柔軟性があるようですが、個人的にはその構成インターフェースが好きではありません。

私は CruiseControl の開発者であり、 AnthillPro なので、それらの長所について話すことができます。私は CITCON のオーガナイザーでもあるので、ほとんどスペース内のすべてのサービス

CruiseControlまたはHudsonは、どちらも非常に優れたオープンソースCIツールです。 CCのカスタマイズと拡張は非常に簡単で、8年の寿命にわたって追加された多くのプラグインがあります。ハドソンは、ほとんどの人にとってより新しく、簡単です。 GUI構成を使用して最初のプロジェクトを実行するのは非常に簡単ですが、CCではXMLファイルをいじる必要があります。 Hudsonにはアクティブなプラグインコミュニティもあり、新しい機能を急速に追加しています。

ただし、プロジェクトの複雑さと要件によっては、AnthillProのような商用ツールの方が適している場合があります。 CCまたはHudsonからAHPへのアップグレードの理由は会社によって異なりますが、いくつかの典型的な答えには、環境によるアクセス制御、複数のビルド/ワークフローを一緒に連鎖させたいという要望、組み込みの依存関係管理、アーティファクトリポジトリ、またはさまざまなツールからデータを収集する機能&ライフサイクル全体でビルドします。

すべての人がこれらの機能を必要としているわけではありませんが、アップグレードにお金の価値があると感じる人は

CI Factory もご覧ください。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top