Teamcity を使用しており、msbuild MSDeployPublish ターゲットを使用して Web サイトをデプロイしています。これは問題なく動作しますが、デプロイ先のサーバーのアプリケーション プールで "Load User Profile" が true に設定されていることも確認する必要があります。
どうすればこれを行うことができますか?
MSDeployPublish で不可能な場合、コマンドライン ステップと MsDeploy.exe で実行できますか?
Teamcity を使用しており、msbuild MSDeployPublish ターゲットを使用して Web サイトをデプロイしています。これは問題なく動作しますが、デプロイ先のサーバーのアプリケーション プールで "Load User Profile" が true に設定されていることも確認する必要があります。
どうすればこれを行うことができますか?
MSDeployPublish で不可能な場合、コマンドライン ステップと MsDeploy.exe で実行できますか?
MSBuild を使用することはできませんが、MSDeploy を使用することは可能です。
MSDeploy では、設定を直接指定することはできませんが、アプリ プールをバックアップして別のサーバーに適用することはできます (設定の違いがあれば変更されます)。
まず、設定をバックアップして SVN にコミットする必要があります。
msdeploy -verb:sync
-source:appPoolConfig="name of your apppool"
-dest:package="apppool.zip"
マニフェスト プロバイダーには package/archivedir プロバイダーを含めることができないため、コンパイル時に、出力パッケージをappppol パッケージに同期する必要があります。
msdeploy -verb:sync
-source:ApplicationPackage.zip
-dest:appool.zip
-skip:skipAction:Delete
(スキップにより、デプロイで appPoolConfig プロバイダーがターゲット パッケージから削除されなくなります)
注: これを逆に実行しないでください (apppool.zip を ApplicationPackage.zip に)。宣言されたすべてのパラメーターが削除され、それをスキップする方法がわかりません。
apppool.zip を ApplicationPackage.zip の「下」にコピーしてから ( 経由でMsDeploySourceManifest
) 生成することはおそらく可能です。そのため、実際には 1 つのステップでマージされますが、それをテストする時間が得られるまで、演習として残しておきます。
注: ファイルを zip ではなくディレクトリに格納したい場合は、 dest:archivedir を使用することもできます。