2009-03-13 16 views
1

前提:私はContinuous Integrationの領域では初めてです。ASP.NETアプリケーション - 抽出、テスト、コンパイル、デプロイ

ASP.NET(.NET 3.5)アプリケーションの抽出、テスト、コンパイル、デプロイに使用する方法は何ですか?

手順1) 時々、私は最新のソースをTFSから、またSubversionから取得したいと思うことがあります。

ステップ2) すべてのテストを実行します。 (私は現在MbUnitを使用しています)

ステップ3) すべてのテストに合格すれば、リリース版をビルドします。

ステップ4) は、FTP経由でコードを展開します - 私は簡単&セットアップ、および低コストまたはフリー/オープンソースを学ぶための解決策を探している特定のURL

で現在のアプリケーションを置き換えます。

MSBuildは、手順3で行うのが一番簡単ですか?私は本当に特別なことをしたくないので...ソリューション名を提供してコンパイルしてください。私の主な関心事は、要件/ステップ#1によって引き起こされた主要な問題を要約するものを見つけることです。

+0

私はこれが役に立ちました - http://stackoverflow.com/questions/220075/ – BuddyJoe

答えて

1

CruiseControl.netを使用しますが、最初の要件は少し問題になる可能性があります。ソースを引き出すリポジトリの選択方法を説明できますか? CC.NETはこれらのいずれかで動作するか、ccnet.config設定でちょっと賢明なことがあれば同時に両方で動作することができますが、どちらから抜け出すかが分かります。

残りの部分は簡単ですが、実際の作業を簡単に行うためにNAntを使用しています。

編集:MSBuildのがリリースされたとき

NAntのは、しばらくの間更新されていない、開発が停止しました。 stackoverflowで検索すると、「MSBuildにスワップすべきか」という質問が多々ありますが、個人的にはNAntの知識が妥当であり、私たちが望むことをしてくれます。 MSBuildでは非常に難しいので、私たちはしばらく待っています。

CruiseControl.NETにはMSBuildを直接呼び出すことができるタスクがありますが、MSBuildが問題を抱えている展開プロジェクトの多くをビルドしているため、DevEnvを直接呼び出しています。

私たちのNAntスクリプトは、ClearCaseの正しいソースをパッケージ化された製品の出荷準備完了まで引き抜くことから、私たちまですべての道を引き継いでいます。

しかし、NAntはほんの1つのオプションです.PowerShellなどの別のスクリプト言語に満足すれば、使用しない理由はありません。 CruiseControl.NETはタグを使用して任意の実行可能ファイルをタスクとして呼び出し、環境変数を使用して多くの情報を渡します。このページ:http://confluence.public.thoughtworks.org/display/CCNET/Executable+Task詳細何が渡されるのか。

2つのセットアップの唯一の違いは、ccnet.configファイル内のソースコントロールブロックであり、NAntスクリプトは、すべてが使用されているビューを変更すると全く変更されません私たちはビューのための標準的なレイアウトを持っているので、すべての時間がどこにあるのかを知ることができます。

もう少し役立つことを願っています。

アラン。

+0

TFSは仕事に役立つでしょう。 Subversionは私の副作用になります。残りのプロセスについても同じ手順を使用したいと思います。 NAntはまだアクティブです..ウェブサイトは、最終更新が2007年12月8日に行われたように見えます.MSBuildは新しい「それ」のものになったのですか? – BuddyJoe

+0

NAntでソリューションをコンパイルするのは簡単ですか?あなたはXMLの1つの行/モードでそれを行うことができますか?私はいくつかのステップを一緒に接着する必要がある場合は、PowerShellを少し良くしています。 – BuddyJoe

+0

私はこれらのことについての考えを追加するために投稿を編集しました。アラン –

関連する問題