网站1 :我在Visual Studio中有一个ASP.NET MVC站点,正在构建,然后从Visual Studio Online发布到该虚拟机。
网站2 :我决定在Visual Studio中在线创建另一个解决方案/项目并在同一个虚拟机上运行(持续集成等)。作为为该项目设置部署组的一部分,我想添加与项目1相同的虚拟机(我相信我不能在项目之间共享部署组)。
当我在虚拟机上执行站点2的VSTS代理脚本时,第一个站点的目标进入"离线",并且该站点在站点2部署组中点亮,从站点1部署组。
似乎只有一个VSTS代理可以设置为接收网站部署:
问题:如何使用IIS设置相同的虚拟机以接收同一VS Online帐户中两个单独网站的部署?有没有办法在Azure虚拟机上设置多个VSTS代理?
答案 0 :(得分:1)
可以在计算机中为VSTS部署多个代理。在设置部署组时,您可以使用以下步骤在azure VM或任何一台计算机中实现此目的。
将目标注册PowerShell脚本复制到记事本。然后替换
$ ENV:系统驱动器\' vstsagent'
使用您对代理的偏好的本地路径,例如
'g:\vstsagentprojX'
这将使项目X部署组的代理安装在g:\ vstsagentprojX中。
替换
- 座席$ env:COMPUTERNAME
在具有项目特定名称的脚本中,例如
--agent chamindac.projx
并且具有唯一的服务名称,因为您已为代理提供了项目特定名称。
按照与其他项目类似的步骤进行操作,并将其PowerShell脚本更改为
$env:SystemDrive\'vstsagent'
替换本地文件夹的项目特定路径说
'g:\vstsagentprojQ'
然后将--agent $ env:COMPUTERNAME更改为项目特定名称,例如
--agent chamindac.projq
然后运行脚本为第二个项目创建部署组代理。
您应该在两个团队项目部署组中有两个目标,即在线。
答案 1 :(得分:0)
正如ChamindaC所说,您可以更新脚本以设置新的部署代理。
另一种方法是您可以手动配置它:
https://{your_account}.visualstudio.com/_admin/_AgentPool
c:\myagent
)cd c:\myagent
)该文件夹(步骤2).\config.cmd –deploymentgroup
命令并在询问时指定参数另一方面,您可以使用WEBSITE 1使用的相同代理。