1

所以这里是交易。在 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 对话,并且该链接的功能非常有限。所以,我可能正在考虑更改构建工作流模板以执行命令行来部署包(?)。

4

1 回答 1

0

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

  • 托管运行时版本
  • 跳过应用程序创建
于 2011-08-23T02:01:12.650 回答