Visual Studio 2008 でリリース ビルドを行うときに、Web サイトを (ftp 経由で) アップロードしたいと考えています。ASP.NET Web アプリケーションまたは MVC を使用しています。最後に展開された Web サイトを自動的にアップロード (および上書き) するように VS.NET を構成するにはどうすればよいですか?
6 に答える
Microsoft のVisual Studio Web Deployment Project Add In を使用できます。
私はこれを MSBuild で CruiseControl の一部として使用しています。これは非常に優れており、MS Build のコミュニティ タスクの一部では、ビルド プロセスの一部として *.config (または任意の XML ファイル) の置換を行うことができます。
編集: MSBuild コミュニティ タスクには FtpUpload アクションが含まれていることもわかります。これはまさにあなたが必要とするものです。
これを行う最も簡単な方法は、VS.NET に組み込まれている「パブリッシュ」機能を使用することです。
プロジェクトを右クリックし、[発行] をクリックします。プロジェクトをビルドしてデプロイします。明らかに、MSBuild や Nant を使用するほどカスタマイズ可能ではありませんが、いくつかのオプションがあります。
以前にこの機能を使用したことがありますが、どういうわけか「Web サイト」プロジェクトでしか使用できないと思っていました。
Nantにはftpタスクがありません。ここで私は、最も便利で、非常に軽く、ビートの効いた解決策を見つけました。なぜそれのポートがnantにないのか不思議です。
または、ナントを使用できます
この質問はちょっと古いですが、これにはMSDeployを使用することをお勧めします。必要に応じて、 WDPを使用して ASP.NET のコンパイルとマージを行うこともできます。MSDeploy の優れた点は、ターゲット マシンに MSDeploy リモート エージェント サービスをインストールできることです。その後、同期を実行すると、古いファイルが特定され、それらのファイルのみが送信されます。したがって、時間と帯域幅を節約できます。また、サイトの展開中に変換を実行することもできます。多くの異なるサーバーへの展開も簡単です。MSDeploy に関するオンライン ビデオがあります。詳細については、http: //sedodream.com/2009/10/27/MSDeployPresentationMaterials.aspx を参照してください。
免責事項:私はこれを書きました
私が書いたものを使っています。
ただし、次のものが必要なため、軽々しく使用しないでください。
- ソース管理 (現時点では SVN に限定されています)
- CI サーバー (Cruise Control や Hudson など)
- 展開先のサーバーにソフトウェアをインストールする機能
- すべてをセットアップするための忍耐
- まだ開発中なので、少し信頼してください:)
気軽に試してみてください。ただし、現時点では、重要なことにはお勧めしません。