0

我正在尝试在 TFS 中配置构建以部署到我们的测试框以进行持续集成。我遇到的问题是 TFS 想要将 附加MSDEPLOYAGENTSERVICE到我的 URL 的末尾,这导致部署返回套接字错误:

 Retrying the sync because a socket error (10054) occurred.   Retrying operation 'Serialization' on object sitemanifest (sourcePath).

这是我的 MSBuild 参数:

/p:DeployOnBuild=True 
/p:DeployTarget=MSDeployPublish 
/p:MsDeployServiceUrl=[ip address]:8172/MsDeploy.axd 
/p:MSDeployPublishMethod=RemoteAgent 
/p:CreatePackageOnPublish=True

该服务器是带有 IIS 7.5 的 Windows Server 2008 R2 64 位服务器。我们使用 Visual Studio 2010 的发布功能使用上面的 Url 部署到测试框没有问题。任何帮助将非常感激。

4

2 回答 2

2

您无需MsDeploy.axdMsDeployServiceUrl. 另外,我看到您没有DeployIisAppPath设置值。您应该将其设置为您在 IIS 中的网站名称。

下面是我们的一个 CI 构建的示例。

/p:DeployOnBuild=True
/p:DeployTarget=MsDeployPublish
/p:CreatePackageOnPublish=True
/p:MSDeployPublishMethod=RemoteAgent
/p:MSDeployServiceUrl=http://[YOUR WEBSERVER URL]
/p:DeployIisAppPath="NAME-OF-WEBSITE-IN-IIS"
于 2012-08-30T16:03:52.493 回答
1

经过几天的大量搜索,我发现了这个问题。

/p:DeployOnBuild=True 
/p:DeployTarget=MSDeployPublish 
/p:MsDeployServiceUrl=[ip address]/MsDeploy.axd 
/p:MSDeployPublishMethod=WMSVC 
/p:CreatePackageOnPublish=True 
/p:DeployIisAppPath=[name of website in iis]
/p:AllowUntrustedCertificate=True 

事实证明,发布方法是罪魁祸首。RemoteAgent 无法正确解释部署,这就是它无法序列化的原因。WMSVC 是发布方法的适当设置。

于 2012-09-11T16:17:30.620 回答