我最近从经典版本转移到 YAML 发布管道。通过经典版本,我只需手动触发我感兴趣的部署(开发、集成、UAT 或生产)。
但是,对于 YAML 管道,我使用阶段,并且它们在构建后自动触发。为了防止这种情况,我在集成阶段添加了审批保护,如下所示。
但是管道无限期地运行并且永远不会结束。因此,我在批准时设置了 5 分钟超时,现在如果没有人批准,集成阶段将被标记为“跳过”。
我觉得我没有以正确的方式做这件事,因为它与经典版本有很大不同。
这是使用 YAML 时处理发布管道的正确方法吗?
最佳答案
Is this the correct way to handle release pipeline when using YAML ?
是的,您的方向是正确的(至少目前如此)。
正如您在问题中所说,Azure devops 不支持 YAML 多阶段管道中的手动触发阶段。因此,我们不能简单地手动触发我们感兴趣的部署阶段。
有一个关于此请求的路线图用户声音:
Manually triggered stage(s) in YAML multi-stage pipelines
大家可以期待一下,相信很快就会与我们见面。
所以,您的解决方法目前是正确的。
关于如果不使用批准超时,Azure 管道将永远运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63105429/