Azure Pipelines 环境批准

Azure Pipelines environments approvals

我搭建了2个环境,只保护了一个环境

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

我假设 Build 和 DevEnv 部署应该无人值守,应该单独为 QAEnv 停止。我错过了什么吗?

您需要将 dependsOn: <environment> 添加到您的工作中。目前,它正在尝试 运行 一次完成所有阶段。

你还在一个阶段中完成了所有这些工作,这让我很不满意。

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

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

同意 Daniel Mann 的观点。

您可以将作业分为两个阶段(开发阶段和 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

结果:

此时stage1没有检查步骤,stage2需要检查

如果分别为两个阶段设置环境,则两个阶段相互独立,不会干扰其他阶段。

希望对您有所帮助。