現在、ビルドプロセスには.net(msbuild&nantを使用)とjava(mavenとantを使用)の両方をビルドするcc.netサーバーを使用しています。
CC.netはソース管理を監視し、別のサーバーで実行されているリモートビルドをトリガーします。CC.netは結果を照合します。
リモートビルドを実行すると、通常は次のようになります。
- 模擬データを使用してnunitまたはjunitまたは類似のものを実行します
- オプションでDBスクリプトを実行して、新しいデータベースインスタンスを作成するか、既知の位置からデータベースを復元します。
- セレンなどを実行してUIをテストする
- コードカバレッジのためにemmaまたはncoverを実行します
- さまざまなデプロイメント環境(テスト、受け入れ、本番)向けのシステムを構築します
いくつかのビルドを同時に実行している場合があります。.netとjava(別のプロジェクトチームからの)があります。
新しいプロジェクトをセットアップするときにリモートビルドを動作させるにはかなりの時間がかかり、cc.netよりもリモートビルドに適したものがあるはずだと感じています。
継続的インテグレーションシステムを使用したリモートビルドの経験はありますか?
CIサーバーの機能リストは本当に欲しくありません。多言語、マルチサーバー環境でCIサーバーをどのように使用したかについて聞いていただければ幸いです。