我一直在研究TFS2010新的构建和使用MSDeploy进行部署的功能。目前为止一切顺利(虽然很难找到特定场景的信息)。
我能否修改我的构建定义以指定要部署到的2个或更多服务器?我需要部署到多个服务器(因为我在测试环境中有两个使用NLB的服务器)。
我现在拥有一个构建定义,它构建、运行我的测试,然后将其部署到我的一个测试服务器上(该服务器上运行着MsDeployAgentService)。它工作得很好,并且每个Web项目都按照其项目文件中的配置进行部署。我使用的MSBuild参数是:
* /p:DeployOnBuild=True
* /p:DeployTarget=MsDeployPublish
* /p:MSDeployServiceURL=http://oawww.testserver1.com.au/MsDeployAgentService
* /p:CreatePackageOnPublish=True
* /p:MsDeployPublishMethod=RemoteAgent
* /p:AllowUntrustedCertificated=True
* /p:UserName=myusername
* /p:Password=mypassword
注意:我不使用/p:DeployIISAppPath="xyz",因为它无法部署我所有的项目并覆盖了我的项目配置。
我能否添加另一个构建参数来调用多个MSDeployServiceURL?比如第二个/p:MSDeployServiceURL参数指定另一台服务器?
还是我必须寻找另一个解决方案,比如编辑WF?
我在这里看到一个几乎完全相同的问题,两个月前发布:TFS 2010 - Deploy to Multiple Servers After Build,所以看起来我不是唯一一个试图解决这个问题的人。
我还在IIS.NET论坛上发布了有关MSDeploy的讨论:http://forums.iis.net/t/1170741.aspx。它已经有很多阅读量,但是没有答案。