カスタム マニフェストの使用
作成者 : Faith Allington
発行日 : 2008 年 3 月 23 日 (作業者 : faith_a(英語))
更新日 : 2009 年 3 月 18 日 (作業者 : faith_a(英語))
このクイック ガイドは、カスタム マニフェストを作成し、同期するのに役立ちます。ここでは、Web サイトを同期し、Web サイト用に自動的に収集されないアプリケーション プール、外部ディレクトリ、アセンブリ、および COM オブジェクトを含めます。
前提条件
このガイドの前提条件ソフトウェアは以下のとおりです。
- .NET Framework 2.0 SP1 以降
- Web 配置ツール(RC 版)
注 : Web 配置ツールをまだインストールしていない場合は、「Web 配置ツールのインストール」を参照してください。
マニフェストの概要
マニフェストは、単にプロバイダーを 1 つの定義にグループ化したものです。マニフェストは、Web サイト、アプリケーション プール、アセンブリなどの複数のパスを指定する手段です。複数の Web サイト、複数のディレクトリ、またはその他のパスの指定に使用できます。
注 : この記事では、IIS 7.0 ベースの Web サイトとアプリケーション プールの移動を示しますが、IIS 6.0 でマニフェストを使用すると、IIS 6.0 ベースの Web サイトとアプリケーション プールを指定できます。
サンプル マニフェスト
<myCustomSite>
<appHostConfig path="TestWebSite" />
<appPoolConfig path="TestAppPool" />
<dirPath path="C:\MyExtraFiles" />
<gacAssembly path="'System.Web, Version=2.0.0.0, Culture=neut
ral, PublicKeyToken=b03f5f7f11d50a3a'" />
<comObject path="Microsoft.ApplicationHost.AdminManager" />
</myCustomSite>
カスタム マニフェストを作成し使用するには
1. メモ帳を開き、XML ファイルを作成します。たとえば custom.xml という名前を付けます。
2. サンプル マニフェストを custom.xml にコピーします。
3. custom.xml をインストール ディレクトリ %programfiles%\Microsoft Web Deploy にコピーします。
4. MyExtraFiles という名前のディレクトリを C: ドライブに作成します。
5. 次のコマンドを実行して、マニフェスト内のオブジェクトをアーカイブに同期します。
msdeploy.exe -verb:sync -source:manifest=custom.xml -dest:archivedir=c:\archive > webdeployarchive.log
「> webdeployarchive.log」を指定すると、アーカイブの結果がログ ファイルに表示され、簡単に参照できます。
アーカイブを開くと、サイト自体と、指定した追加のディレクトリが表示されているはずです。アーカイブからマニフェストに同期できます (つまりアーカイブから、マニフェストで指定されている任意のプロバイダーに同期します)。
アーカイブを使用せず、マニフェストを使用して、ライブ同期または移行操作を実行することもできます。マニフェストを使用して 2 つのライブ プロバイダーを同期するには、マニフェストに設定されたソースとターゲットの両方に同期する必要があります。
カスタム マニフェストを使用してサイトを同期するには
1. 次のコマンドを実行して、マニフェストをリモート ターゲットに同期します。
msdeploy.exe -verb:sync -source:manifest=custom.xml -dest:manifest=custom.xml,targetName=http://computername/MSDEPLOY/ > webdeploysync.log
まとめ
ここでは、カスタム マニフェストを作成し、操作に使用しました。Web サイトまたはサーバーにとって重要なプロバイダー パス (レジストリ キー、GAC 内のアセンブリなど) を追加することによって、マニフェストをさらに拡張できます。migrate 動詞の詳細については、「MS Deploy manifest provider (英語)」を参照してください。