Vishal Joshi 有一个很棒的 PDC 演讲 可在此下载,它描述了 Visual Studio 2010中新的 MSDEPLOY 特性——以及如何在 TFS 中部署应用程序。(这里也有一个来自 斯科特 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
文件,它会完美地部署。如果我通过 VisualStudio 运行 WebDeploy,它也能很好地工作。
但是我希望使用这些参数运行整个部署,而不是单独调用 msdeploy
或运行包 .cmd
文件。我怎么能这么做?
附言。是的,我的 Web Deployment Agent Service
正在运行。我还在 IIS 下运行管理服务。我都试过了。
Args I'm using :
/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.韦伯。Target (2660) : VsMsdepartment 失败。(无法联系远程代理(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”。响应’是”,但‘ v1’是预期的。远程服务器返回一个错误: (401)未授权。