WPFアプリケーションがあり、継続的インテグレーションにTFS2010を使用しています。ソース管理へのチェックインごとに、新しいビルドがトリガーされます。私が欲しいのは、ビルドのたびにこのプロジェクトをローカルフォルダーに公開/デプロイすることです。これどうやってするの?
実際、別のWCFサービスプロジェクトもあり、そのための継続的インテグレーションを設定することができました。ビルドされ、単体テストが実行されてから、サーバーを正常にデバッグするためにデプロイされます。私が設定したビルド定義は次のとおりです。
Clean Workspace = None
Copy Outputs to Drop folder = False
MSBuildArguments =
/p:DeployOnBuild=True
/p:DeployTarget=MsDeployPublish
/p:MSDeployServiceURL=http://<serverIP>
/p:DeployIISAppPath="/DebugSite"
/p:CreatePackageOnPublish=True
/p:MsDeployPublishMethod=InProc (changed from RemoteAgent, didnt bother to try and remove other parameters)
/p:AllowUntrustedCertificate=True
/p:UserName=...
/p:Password=...
しかし、このWPFプロジェクトに同じ構成を使用すると、コンパイルされますが、宛先フォルダーには何も配置されません。空です(ところで、VS2010から同じプロジェクトを公開すると、正常に展開され、IEで参照できるため、宛先フォルダーがIISで正しく定義されていることがわかります。)
私はかなり長い間これに苦労してきました。私は多くの「近い」質問と解決策を見つけましたが、どれも私にとって役に立ちませんでした。例えば:
WPF アプリケーションを展開するための最も簡単な方法は何ですか?、ビルドの出力ディレクトリの内容を宛先にコピーする「CopyDirectory」アクティビティをビルドのワークフローに追加しました。これにより、出力フォルダーが大量のファイルでいっぱいになりました。これらのファイルは、.exe、.xbap、およびすべての.dllを使用したコンパイルのすべての製品でしたが、WPFアプリケーションとしては使用できませんでした。ドロップ位置を使用しようとすると、同様の結果になりました。アプリを閲覧しようとすると、次のエラーが発生します。
An exception occurred while downloading the application. Following failure messages were detected: - Downloading http://server/DebugSite/MyProject.exe.config.deploy did not succeed. - The remote server returned an error: (404) Not Found.
また、次の質問が未回答であることがわかりました。http: //social.msdn.microsoft.com/Forums/en-US/tfsbuild/thread/e9abf652-223f-4683-9c07-f3064cd4296fこれは、私とほぼ同じ問題です。 mIIS7およびWindowsServer2008を使用します。
では、ビルド後にTFSにWPFアプリを展開させるにはどうすればよいですか?