通过可选阶段将管道状态标记为“已完成”

时间:2019-10-19 08:28:24

标签: azure-devops azure-pipelines

我有3个步骤YAML管道构建(1)部署到开发(2)部署到测试(3)。< / p>

我的需求非常基本:

  • a。当master中的某些代码更改时,管道触发( OK
  • b。进行此更改后,构建部署到开发阶段会自动运行(确定
  • c。 部署到测试阶段一直等待我批准(确定

但是,如果我不批准阶段(3),我就会遇到问题,管道永远不会结束,并且总是显示正在进行的图标。因此,每当检查“管道”页面时,我都会看到所有管道都在运行,但实际上并未运行。

更糟糕的是,两周后整个管道都处于失败状态。

我的问题是:

是否可以将部署到测试阶段标记为可选?管道应该在没有此阶段的情况下完成,但可选地,我希望能够手动执行此步骤。


Azure DevOps - Multi Stage Pipelines Summary

1 个答案:

答案 0 :(得分:2)

对于您的问题,我认为多阶段Yaml目前不支持该问题。

如果要以yaml手动运行舞台,则只能通过为checks创建environments来进行。只有两个选项可供查看:ApproveReject。因此,当您不想部署到此阶段时,该阶段将保持在waiting状态,并会自动拒绝直到批准超时。一旦部署到阶段被拒绝,即使先前阶段已成功部署,管道也将显示为失败。

因此,正如Shayki在评论中所说,需要改进多阶段操作,它应该为该阶段提供一个更合理的手动触发器。在这里,我在开发人员社区论坛中针对您的问题创建了功能请求。您可以对here进行投票和评论,以提高其优先级。

此外,作为解决方法,您可以使用发布管道进行部署。您可以在“发布”页面中创建发布管道。然后,您可以添加测试阶段并为其设置Manual only触发器。这样就可以在没有此阶段的情况下完成管道。

enter image description here