質問

自動化されたビルドとテストは、特にデバッグと最適化の両方で多くのプラットフォームとテストをサポートしているため、ますます多くのリソースを使用しています。そのため、より多くのインクリメンタルな「パイプライン」を可能にするツールサポートを探しています。アプローチして、フィードバックと結果をより速く得ることができます。理想的な特性には次のものがあります。

  1. インクリメンタルフィードバックのサポートにより、ビルドの結果、単体テスト、高速テスト、長時間実行テスト、静的分析などが利用可能になったときに確認できます。

  2. タスクの依存関係:ビルドが失敗した場合、テストは実行されませんが、他のタスクは実行できます(lintなど)。

  3. 複数のビルドおよびテストツール(カスタムを含む)のサポート。

  4. 複数のプラットフォーム(Linux、Mac、場合によってはWindows)のサポート。

  5. ログファイル、ビルド/テスト出力など、アーカイブ機能が優れている場合があります。当然、これは管理不能なほど大きくなる可能性があるため、X日またはYビルド後にデータを削除するのが理想的です

ポインタまたは個人的なアドバイスは大歓迎です。

役に立ちましたか?

解決

Jenkins(以前のHudson)をご覧ください。

他のヒント

Anthill を使用していますが、料金を支払う必要があります。

Automated Build Studio が近づいてきましたが、おそらくそうではありませんWindowsのみの性質のためのオプション。

  1. はい。 Webフロントエンドは、ビルドの実行中に、詳細と割合の両方で増分フィードバックを提供します。
  2. はい。ビルドプロセスは、タスクの階層です。タスクがフェイルコンティニューかフェイルアボートかを判断できます。
  3. はい。タスクはほとんど何でもかまいません。それに伴うタスクのツールボックスはかなり完成しています。
  4. いいえ。ビルドサーバーはWindowsマシンである必要があります。ただし、Webフロントエンドからビルドを開始できます。
  5. はい。すべてのビルドは階層的に詳細に記録されるため、すべてのステップで何が起こったかを簡単に特定できます。

buildbot が必要なすべてを実行すると思います:

  1. Webフロントエンドは、コマンドからの出力を表示します。
  2. タスクの完全な依存関係
  3. 完全にカスタム化されたツール-Pythonスクリプト、主にシェルスクリプト
  4. 現在、Linux、Mac、Solaris、HP-UXで使用しています
  5. すべてを記録しますが、どのように/どのようにパージするかわかりません。

thoughtworksオプションに同意する必要があります-「アジャイルリリース管理」に移動 http://www.thoughtworks-studios.com/go-agile-release-management

コミュニティエディション(無料)と、エンタープライズエディションには、環境の構成や特定のアーティファクト(バージョン)の特定の環境への展開など、いくつかの優れた機能があります。

私のJetBrains TeamCityのセットアップは、必要なものを概算します。

単一のプロジェクトの下で、複数の異なるビルド構成をセットアップしました。

各ビルド構成の違いは、ビルドターゲットの選択(NAntを使用)とトリガーの違いです。

「XYZ統合」があるデバッグビルドを行い、いくつかのNUnitテストを実行する構成。これは、チェックインが完了してから60秒後にトリガーされ、開発チームに迅速なフィードバックを提供します。

「XYZ Daily」もあります;デバッグビルドを行い、NUnitテストを実行してから、MSIをビルドし、ドキュメントをコンパイルする構成。おそらく推測できるように、これは1日に1回実行されます。

同じことを行うことができますが、構成の範囲が広くなります。

Hericus Softwareの Zed Builds and Bugs Management を使用して、説明内容を処理できます。メインビルドは、Java、C ++、C#のコンパイル、5つの異なるOSプラットフォームのインストールビルドをカバーする61を超える個別のステップで構成されています。一部のステップは並行して実行され、一部はビルド全体が失敗することなく失敗する可能性があり、多くのステップは異なるマシンでリモートで実行されます。

1)はい。ビルドのステップが実行されると、ビルド全体が完了するのを待たずに、ステップの結果をすぐに見ることができます。

2)はい。ステップの失敗が完全なビルドの失敗を引き起こすかどうかを定義できます。 「子」を作成する機能または" sub" 「親」によって呼び出されるビルドまたは「マスター」ビルドにより、非常に柔軟になります。

3)はい。メイクファイル、ant、C#ソリューション、およびいくつかのカスタムスクリプトを使用しており、それらはすべてうまく統合されています。

4)はい。ビルドサーバーはjavaであり、1.6 JDKのみを必要とするため、すべてのプラットフォームはメインビルドサーバーまたはサテライトビルドサーバーのいずれかで動作します。

5)はい。ビルド" status"にコピーされたすべてディレクトリが保存されます。これには、Webサイトから確認できるコマンドの標準出力/エラーが含まれます。どのくらいの「開発」を選択しますかビルドの数に関して保持するビルド履歴。ビルドを「QA」に昇格させることもできます。その場合、「QA」から削除されるまで削除されません。 QAからビルドを" Production"に昇格させることができます。削除するまですべてのビルドアーティファクトが保持されます。

ThoughtworksからCruiseをお試しください

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