Vishal Joshi在此处提供了出色的PDC演讲,该演讲描述了Visual Studio 2010中的新MSDEPLOY功能-以及如何在TFS中部署应用程序。(Scott Hanselman也发表了精彩的演讲,但他没有参加TFS)。
您可以在TFS2010中使用MSBUILD来调用MSDEPLOY,以将程序包部署到IIS。这是通过MSBUILD的参数完成的。
演讲解释了一些命令行参数,例如:
/p:DeployOnBuild
/p:DeployTarget=MsDeployPublish
/p:CreatePackageOnPublish=True
/p:MSDeployPublishMethod=InProc
/p:MSDeployServiceURL=localhost
/p:DeployIISAppPath="Default Web Site"
但是有关此的文档在哪里-我找不到任何文档?
我整天都在努力使它正常工作,但并不能完全正确,并最终导致各种错误。如果我运行程序包的cmd
文件,它将完美部署。如果我通过Visual Studio运行WebDeploy,它也可以完美运行。
但是我想通过msbuild
使用这些参数来使整个部署运行,而不是单独调用msdeploy
或运行包.cmd
文件。我怎样才能做到这一点?
PS。是的,我确实在Web Deployment Agent Service
跑步。我也有在IIS下运行的管理服务。我试过同时使用。
我正在使用的Args:
/p:DeployOnBuild=True
/p:DeployTarget=MsDeployPublish
/p:Configuration=Release
/p:CreatePackageOnPublish=True
/p:DeployIisAppPath=staging.example.com
/p:MsDeployServiceUrl=https://staging.example.com:8172/msdeploy.axd
/p:AllowUntrustedCertificate=True
给我 :
C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ Web \ Microsoft.Web.Publishing.targets(2660):VsMsdeploy失败。(远程代理(URL https://staging.example.com:无法联系8172 / msdeploy.axd?site = staging.example.com。确保在目标计算机上安装并启动了远程代理服务。)错误详细信息:远程代理(URL https://staging.example。 com:8172 / msdeploy.axd?site = staging.example.com)无法联系。确保在目标计算机上安装并启动了远程代理服务。收到不支持的回复。响应标头“ MSDeploy.Response”为“”,但应为“ v1”。远程服务器返回错误:(401)未经授权。