如何分离多个工作的审批

How to separate approvals of multiple jobs

我有一个包含两个作业的发布管道,分别用于 QA 和 Production。每个作业都有对应的环境:

jobs:
- deployment: QA
  displayName: QA Deployment
  environment: QA
...
- deployment: Production
  dependsOn: QA
  displayName: Production Deployment
  environment: Production
...

并且每个环境都设置为请求批准:

我希望每个工作都有单独的批准,即能够批准 QA 工作和 运行 它,而不必批准生产工作。但出于某种原因,如果不批准 QA 和 Production,我无法 运行 QA 工作。所以我可以 运行 兼职或 none。我做错了什么,我该如何解决?

根据 documentation,批准应应用于阶段。您应该有一个单独的阶段,其中包含每个环境的部署作业。

尝试:

stages:
- stage: QA
  jobs:
  - deployment: QA
    displayName: QA Deployment
    environment: QA
- stage: Production
  jobs:
  - deployment: Production
    dependsOn: QA
    displayName: Production Deployment
    environment: Production