2011-08-10 14 views
4

これで私の現在のセットアップと私の問題は現時点ではわかりました。私はVisual Studioソリューションのプロジェクトが増えています。このソリューションには、約15のプロジェクト(いくつか与えてもらう)と急速に成長するコードベースが含まれています。私がこれに着く前に、私は継続的なビルドシステムのセットアップをしておくべきだったが、それは決して遅すぎるとは思わない。だから、少し研究を行った後、私は私の完璧なセットアップが可能だろうと信じている:CruiseControl.NetNUnit 2.5.xと.Net 4.0による継続的なインテグレーション/ビルド

  • NUnit 2.5.x(...我々はすでにこれに結びついているので、必要が)
  • 統合(他のオプションを開いたが、 Gitのサポートを持つ唯一の無料のもの)
  • コード・カバレッジ・ツールとの統合(NCoverDotCover)など、JSLintと圧縮ツールのために(シェルコマンドを実行するために統合
  • いいだろう)

私が見逃しているのは、自動ビルドを実行するためのツールです。私はNAntを見ましたが、MSBuild(プロジェクトをビルドする)を実行するサポートはかなり古いようでした(私たちはVS2010を使用しています)。そして、ビルドプロセスでソリューションファイルを利用することは莫大な時間節約になります。私もMSBuildを見ましたが(明白な理由で)、私は実行中に見つかったプロセスNUnitは、2.4.x(MSBuild拡張プロジェクト)しかサポートしていません。

他の誰もが継続的なビルドシステムをどのように編成しているのか不思議です。 NUnitかなり人気があるので、私はこれについて疑問に思っている唯一の人であってはなりません。

+0

ソリューションファイルからビルドする場合は、/ buildと関連するオプションを使用していつでもdevenv.exeを使用できます。http://codebetter.com/raymondlewallen/2005/07/20/using-devenv-at-the-command-prompt-to-build-projects/ – shelleybutterfly

+0

これはうまくいくでしょう。しかし、私はビルドファイルで少しきれいに見えるものを望んでいるし、私の後にこれを管理しなければならない他の人に直感的になるだろう。 –

+0

残念ながら、私が継続的なビルドを設定できるようになる唯一のプロジェクトは、CIのものを完成させる直前にキャンセルされました。私はそれを調べていました。開発中にビルドするためのソリューションを使用していたので、私は2つのビルド定義を別にしたくありませんでした。私はMSBuildを少し見て、私たちの場合には努力する価値がないと決めました。しかし、それはあなたが私がこれまで以上にいるように聞こえる。 :)あなたがw/devenvと.slnファイルをビルドすることについて汚れているものを見つけられるかもしれませんか?一度私は/ビルドオプションのハングアップを得て、それは私にはかなり簡単に見えた。 – shelleybutterfly

答えて

4

私の最初の質問は、プロジェクトをどのように構築するのでしょうか?

Teamcity Professionalは、サーバーあたり20のビルド構成で無料であり、あなたのようなsoooooをはるかに簡単にし、ドットカバーを組み込み、セットアップやテストなどを実行するのが簡単です。そこに。

Jenkins

が、それはハドソンのフォークだと
はその後、チームシティーそれがもう少し柔軟に何でもするプラグインと非常に柔軟性があり、次のランナーアップしているが、それはセットアップするように簡単ではありません、コードカバレッジがあります設定する痛みといくつかの迷惑な癖がありますが、完全に無料です。

あなたがCruiseControl.Netを使用する本当に強い理由がない限り、気にしないでください。とても強力ですが、悲しいかなか使えないほど痛いです。

TeamcityとJenkinsはビルドをセットアップする限り、MSBuild、NAnt、Rakeなどをサポートしています。また、msbuildやNantファイルのような複数のビルドステップもサポートしています。私が過去に行ったことは、.slnファイルを使用してビルドステップを1つ実行し、ユニットテストのタスクでビルドを使用してから、コードカバレッジに組み込みのタスクを使用して、別のビルドタスクを使用してファイル。

私はTeamCity、Jenkins、TFSを使用していますが、私はCruiseControl.Netを使用しようとしましたが、痛いほど厄介であると感じました。遠くまでTeamcityが最高です.Jenkinsは近いうちにTFSを使用してもそれを使用したくはありません。

ご不明な点がございましたら、お気軽にお問い合わせください。

+0

私の最大の疑問は、TeamCity Proのようなもので、私はまだ自動化が必要だと思います。 (NAntやMSBuildを使って)ビルドスクリプトやTeamCityで私の世話をしているのですか? –

+0

TCbuildに移動する場合は、msbuildやnantは必要ありません。どのくらいプロセスを拡張したいのですか?彼らなしでやってください。 –

+0

これは知っておきたいことです。私はかなり広範なビルドプロセス(少なくともリリースのために)を持っているこのプロジェクトを予見しており、無知な自動ビルドプロセスがうまくいくでしょう。しかし、後でなく、(シンプルな)CIシステムが早く必要になっているので、それは後で来なければならないかもしれません。 –

0

あなたが必要とするすべては、あなたがそれはNUnitの/ VSとに建てられたレポートの束のための素晴らしいサポートを持っているTeamCityと間違って行くことができないテストをコンパイルして実行された場合。

あなたは、より複雑なビルドを実行する必要がある場合スクリプトビルドスクリプトの作成にはFinalBuilderを使用し、そのスクリプトを実行するにはTeamCityコマンドランナーを使用することをお勧めします。 チームシティーにテスト結果をインポートすることによって、あなたはまだレポートを取得することができますし、チームシティーへFinalBuilderからの出力ビルド状況に簡単な方法があります:

+0

ポストの暗示と同様に、私は自分のビルドプロセスに多くの費用を費やすつもりはありません。だからFinalBuilder SEが10ライセンスで839ドルかかるという事実は既に私には分かりません。 –

2

あなたのVisual Studio 2010社のソリューションを構築するためのNAntを使用することができます。私はいつもそれをする。私の答えでサンプルのNAntスクリプトを提供しました:<msbuild> task or msbuild.exe with NAnt?

関連する問題