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"
Run Code Online (Sandbox Code Playgroud)
但是这里的文件在哪里 - 我找不到任何东西?
我一整天都在努力让这个工作起来并且不能完全正确并且最终会遇到各种错误.如果我运行包的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
Run Code Online (Sandbox Code Playgroud)
给我 :
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)未经授权.