【问题标题】:TFS build definition does not deploy web application to IISTFS 构建定义不会将 Web 应用程序部署到 IIS
【发布时间】:2012-06-28 10:25:51
【问题描述】:

我目前正在尝试获取 TFS 构建定义以自动将我的 Web 应用程序部署到服务器。构建定义只是一个标准的手动构建定义。

我已经在团队资源管理器中为我的项目正确创建了构建定义,当我将构建排队时,它成功完成。

我已将构建过程参数部分中的 MSBuild Arguments 属性设置为:

/p:DeployOnBuild=True 
/p:Configuration="Release" 
/p:DeployTarget=MSDeployPublish 
/p:MSDeployPublishMethod=WMSVC 
/p:MsDeployServiceUrl=myserver.com 
/p:DeployIISAppPath="Default Web Site" 
/p:username=username 
/p:password=password 
/p:AllowUntrustedCertificate=True 
/p:SkipExtraFilesOnServer=True

但是,当我在 IIS 中查看我的 Web 应用程序时,应该存在的文件丢失了,例如 web.config 文件。

在 Visual Studio 中右键单击我的 Web 应用程序并通过 Web Deploy 发布,使用上述设置可以正常工作,并且已发布的 web.config 和其他文件显示在 Web 根目录中。

这只是一个开发服务器,所以TFS和IIS安装在同一台机器上,将/p:MsDeployServiceUrl改为localhost也没有效果。

构建定义中是否缺少某些内容,或者是获取 TFS 构建以部署我的 Web 应用程序所需的参数?

【问题讨论】:

标签: tfs tfsbuild visual-studio-2012 webdeploy build-definition


【解决方案1】:

您声明的所有属性看起来都不错,但服务 URL 除外。它需要指向目标服务器上管理服务的完整路径。

/p:MsDeployServiceUrl=https://yourserver:8172/msdeploy.axd

管理服务的默认端口是 8172,但如果您的目标设置不同,则需要进行调整。

【讨论】:

    【解决方案2】:

    我想说去掉/p:Configuration="Release" 部分。

    然后转到Process > 1. Required > Items to Build > Configurations to Build并在那里设置配置。

    【讨论】:

    • 如果 OP 添加了自定义 MSBuild 活动,这可能对他们不可用/不知道(您能列出要从中选择的构建参数吗?),或者他们特别想使用此配置。跨度>
    【解决方案3】:

    您是否尝试为您的 IIS 使用完整路径,例如 /p:DeployIISAppPath="Default Web Site/mywebapp

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-14
      • 1970-01-01
      相关资源
      最近更新 更多