4

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

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

我已将 Build process parameters 部分中的 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 应用程序所需的参数?

4

3 回答 3

1

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

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

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

于 2012-07-13T00:14:00.747 回答
0

我会说摆脱这/p:Configuration="Release"部分。

然后去Process > 1. Required > Items to Build > Configurations to Build那里设置配置。

于 2012-07-13T00:22:00.230 回答
0

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

于 2012-10-19T19:40:17.520 回答