如果不使用批准超时,Azure 管道将永远运行
Azure pipeline runs forever if not using approval timeout
我最近从经典版本转移到 YAML 发布管道。对于经典版本,我只需手动触发我感兴趣的部署(开发、集成、UAT 或生产)。
然而,对于 YAML 管道,我使用阶段,它们会在构建后自动触发。为防止这种情况,我在集成阶段添加了 Approval guard,如下所示。
然而,管道是 运行 无限期的,永远不会结束。所以我设置了 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
大家可以期待一下,相信很快就会和我们见面了。
因此,您的解决方法目前是正确的。
我最近从经典版本转移到 YAML 发布管道。对于经典版本,我只需手动触发我感兴趣的部署(开发、集成、UAT 或生产)。
然而,对于 YAML 管道,我使用阶段,它们会在构建后自动触发。为防止这种情况,我在集成阶段添加了 Approval guard,如下所示。
然而,管道是 运行 无限期的,永远不会结束。所以我设置了 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
大家可以期待一下,相信很快就会和我们见面了。
因此,您的解决方法目前是正确的。