使用Team Build和Web Deploy部署Web应用程序

时间:2011-08-22 17:29:35

标签: tfs team-build webdeploy

所以,这是交易。在Web应用程序项目设置中,我配置了一个部署包,其中包含所有内容文件以及该站点的IIS设置。应用程序池。现在,当我转到Team Build构建配置时,我使用以下参数来部署站点。

/p:UseWPP_CopyWebApplication=True 
/p:PipelineDependsOnBuild=False 
/p:DeployOnBuild=True 
/p:DeployTarget=MsDeployPublish 
/p:CreatePackageOnPublish=True 
/p:MSDeployPublishMethod=WMSVC 
/p:MSDeployServiceUrl=https://<servername>:8172/MsDeploy.axd 
/p:AllowUntrustedCertificate=True 
/p:DeployIisAppPath="mysite.com" 
/p:UserName=<domain>\<user> 
/p:Password=<password>

虽然这实际上有效,但如果目标服务器上不存在“mysite.com”站点或者未正确设置应用程序池(即ASP.NET版本不匹配),则部署将失败。所以我发现自己在从Team Build部署任何东西之前手动创建这些东西。有没有办法实现自动化?我错过了某种参数转换吗?我想用另一种方式来表达这个问题,就是为什么当包中包含所有IIS设置并且应该只部署时,我必须设置所有这些。

感谢您的帮助/解释。

修改

我不完全确定这是否属实,但我相信我无法创建网站/应用程序池。根据我对事物的理解,Team Build使用msbuild与msdeploy进行通信,并且该链接的功能非常有限。所以,我可能正在考虑更改构建工作流模板以执行命令行来部署包(?)。

1 个答案:

答案 0 :(得分:0)

查看iisApp提供商的TechNet文档 http://technet.microsoft.com/en-us/library/dd569054(WS.10).aspx。在这四个参数中,这些是您可能感兴趣的参数:

  • managedRuntimeVersion
  • skipAppCreation