如何确定是否为TFS构建定义执行了MSBUILD参数

时间:2013-03-26 18:24:22

标签: visual-studio-2012 tfs msbuild build-agent

我正在使用Team Foundation Service 2012,内部托管构建控制器,因此我可以将应用程序部署到我们的Web服务器。我设置了Build Definition,并使用了我的Debug配置,并提供了以下MSBUILD参数。

/p:DeployOnBuild=true /p:DeployTarget=MSDeployPublish /p:MSDeployPublishMethod=WMSVC /p:MSDeployServiceUrl=https://myserversname:8172/msdeploy.axd /p:AllowUntrustedCertificate=true /p:DeployIisAppPath="somesite.ourdomain.com" /p:Username=na\svc-users /p:Password=PASS /p:VisualStudioVersion=11.0

解决方案构建得很好,没有警告或错误。当我运行部署服务器时,应用程序为空。我已经设置了web应用程序文件夹和inetsrv文件夹的权限。我还安装/配置了web部署。如果我没有收到任何错误,我怎么能告诉我的部署出了什么问题?我已经检查了构建服务器和部署服务器上的事件日志,并且没有任何错误或警告。我也可以从我的开发机器上进行发布,它与完全相同的参数完美配合。

1 个答案:

答案 0 :(得分:5)

将这两个文件夹及其内容从开发环境复制到构建服务器:

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications

这些文件夹是通过Visual Studio 2012发布引起的依赖项。此依赖项在.sln文件中引用。

不幸的是,这意味着Web部署无声地失败。

或者,您可以在构建服务器上安装Visual Studio,但这样做会浪费许可证。