我已经在 VM 上安装了代理并配置了 CI 构建管道。管道被触发并且工作正常。
现在我想使用相同的构建管道,相同的代理,但不同的 VM。这可能吗?
构建将如何执行以及将在哪个 VM 上复制源?
谢谢你。
我已经在 VM 上安装了代理并配置了 CI 构建管道。管道被触发并且工作正常。
现在我想使用相同的构建管道,相同的代理,但不同的 VM。这可能吗?
构建将如何执行以及将在哪个 VM 上复制源?
谢谢你。
不。这些专用代理应该具有唯一的名称并分配给代理池/队列。如果他们有工作要做,他们会轮询 VSTS/Azure Devops 服务器。然后他们执行它。如果您使用相同的私有构建代理克隆一台机器,那么理论上拾取它的代理将执行该作业,但这是理论上的。我真的不知道代理队列将如何处理这个问题。
这取决于你想做什么。
如果您想分散工作负载,例如 2 个构建服务器并将构建转到不忙的构建服务器,那么您将创建 1 个代理池/队列。在一台服务器上创建专用代理并将其注册到该池,然后在第二台服务器上取消注册代理,然后重新注册代理将其添加到 SAME 池。
如果您想同时在 2 台服务器上工作,例如同时部署到 2 台服务器,那么您将创建一个“部署组”并将两台服务器添加到其中。您将从代理池/队列中注销这两个代理。从您的“部署组”复制 PowerShell 脚本片段并在每台计算机上运行它。这样,您可以在发布管道和部署中并行使用它,从而减少部署时间。
您可以在管道中设置一个变量,以便在构建时指定 VM 的名称。
此外,一旦您拥有一个或多个代理,您就可以将它们添加到应用程序池中。运行构建时,它将从池中选择一个代理并使用它。