如何在代理再次联机时(离线后)自动重试对代理的部署

How to auto retry deployments to agents when they come online again (after having been offline)

使用 Azure 管道和部署组时,可以使用此处的说明将 "last successful" 版本重新部署到具有给定 "tags" 的新代理:

https://docs.microsoft.com/en-us/azure/devops/release-notes/2018/jul-10-vsts#automatically-deploy-to-new-targets-in-a-deployment-group

我的问题是发布到由 3 台机器组成的部署组时。 2 个在线,1 个定期离线。在这种情况下,当 1 台机器离线时,我的发布失败。如果 Azure 管道在机器离线恢复在线时重试部署,这对我来说是可以的。我认为这会以与 "new targets" 相同的方式工作,但我仍然没有弄清楚如何。

这只是一个小测试。投入生产时,我的部署组将由数百台机器组成,并非所有机器都同时在线。

那么 - 是否可以自动化该过程以确保所有机器最终都处于最新状态,当所有机器都在线时?

Octopus-deploy 好像有这个功能

部署失败后的状态 (目标再次在线)

嗯,一般来说,一旦代理在线,排队的部署就会自动触发。但对于失败的部署,您必须手动重新部署它们。无法在代理再次在线时自动重试...

根据我的测试,要重新部署到所有 "not-updated-agents",您必须从部署组中删除之前部署通过的其他目标机器...