0

Teamcity を使用しており、msbuild MSDeployPublish ターゲットを使用して Web サイトをデプロイしています。これは問題なく動作しますが、デプロイ先のサーバーのアプリケーション プールで "Load User Profile" が true に設定されていることも確認する必要があります。

どうすればこれを行うことができますか?

MSDeployPublish で不可能な場合、コマンドライン ステップと MsDeploy.exe で実行できますか?

4

1 に答える 1

1

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 を使用することもできます。

于 2012-09-27T11:12:42.553 に答える