Azure Pipelines环境批准

时间:2020-06-27 12:58:01

标签: azure-devops azure-devops-pipelines

我已经设置了两个环境,并且仅保护了一个环境。

但是管道运行希望我在管道启动之前就批准。

我假设Build和DevEnv部署应该在无人值守的情况下进行,并且应仅对QAEnv停止。我想念什么吗?

enter image description here

enter image description here

enter image description here

2 个答案:

答案 0 :(得分:2)

您需要向工作中添加dependsOn: <environment>。就目前而言,它正在尝试一次运行所有阶段。

您还可以在一个阶段中完成所有这些工作,这对我来说很重要。

您需要将它们分为多个阶段:

stages:
- stage: Build
  jobs: ...
- stage: DEV
  jobs: ...
- stage: QA
  jobs: ...

答案 1 :(得分:0)

同意Daniel Mann。

您可以将工作分为两个阶段(Dev阶段和QA阶段)。

这里是一个例子:

stages:
- stage: Dev_Stage
  jobs:
  - deployment: DeployWeb
    displayName: deploy Web App
    pool:
      vmImage: 'Ubuntu-latest'
    environment: 'env1'
    strategy:
      runOnce:
        deploy:
          steps:
          - script: echo Hello world

- stage: QA_Stage
  jobs:
  - deployment: DeployWeb
    displayName: deploy Web App
    pool:
      vmImage: 'Ubuntu-latest'
    environment: 'env2'
    strategy:
      runOnce:
        deploy:
          steps:
          - script: echo Hello world

结果:

enter image description here

在这种情况下,stage1没有检查步骤,需要检查stage2。

如果分别为两个阶段设置环境,则这两个阶段是相互独立的,它们不会干扰另一个阶段。

希望这会有所帮助。