有谁知道如何从 Team Foundation Service 部署到托管在 Web 服务器上的站点,即不是 Azure。我有一个可以使用 Web Deploy 部署到的网站,我想使用 Team Foundation Service 部署到它。我试过编辑构建工作流,但没有太大成功。有没有人设法做到这一点?
2 回答
这个问题似乎提出并解决了同样的问题:
“使用‘Web Publish’部署 - 直接从 Team Foundation Server 2012 Express(到专用服务器,而不是 Azure) ”
您需要在 TFS 构建的构建过程中将此字符串添加到 MSBuild Arguments。
/p:DeployOnBuild=True /p:DeployTarget=MsDeployPublish /p:CreatePackageOnPublish=True /p:MSDeployPublishMethod=WMSVC /p:MSDeployServiceUrl=urlToWebDeloy.com /p:DeployIisAppPath="appurl.com" /p:UserName=username /p:Password=password /p:AllowUntrustedCertificate=True
看来您执行此操作的方式与您在 Team Foundation Server 中的方式相同(我使用的是 2012 Express)。首先,您需要在服务器上设置 Web Deploy(为了安全起见,我建议使用非标准端口(下面的示例使用 1234),并获取签名的 SSL 证书以防止中间人攻击 - 然后更改 p:AllowUntrustedCertificate=False,或通过 VPN 进行)。
从 Visual Studio 创建一个构建定义(如果您还没有) - 然后右键单击并“编辑构建定义”。
单击进程/高级/MSBuild 参数。
如果你需要完整的参数,你可以谷歌它 - 虽然这些对我有用: /p:DeployOnBuild=True /p:DeployTarget=MsDeployPublish /p:CreatePackageOnPublish=True /p:MSDeployPublishMethod=WMSVC /p:MSDeployServiceUrl=addressofmsdeploy.com:1234 /p:DeployIisAppPath="iisdomain.com" /p:UserName=windowsusername /p:Password=windowspassword /p:AllowUntrustedCertificate=True
在排队构建 TFServer 之后,应该为您部署。