【问题标题】:How to add Pre Deployment and Post deployment approvals in multistage YAML pipeline?如何在多阶段 YAML 管道中添加部署前和部署后批准?
【发布时间】:2020-06-29 11:48:59
【问题描述】:

我有一个多阶段 YAML 管道,其中包含两个阶段 1) 构建和 2) 部署。下面提到了部署阶段,我想在部署任务之前在该阶段添加预部署批准。如何在多阶段 YAML 管道中添加部署前和部署后批准?

stages:
- stage: 'Build'

# RESTORE
   # Some task implementation
# BUILD
   # Some task implementation
# PUBLISH
   # Some task implementation

# DEPLOY STAGE
- stage: 'Dev'
  displayName: 'Deploy to the dev environment'
  dependsOn: Build
  jobs:
  - deployment: Deploy
    pool:
      vmImage: 'ubuntu-16.04'
    environment: dev
    variables:
    - group: Release
    strategy:

# HOW TO ADD PRE DEPLOYMENT AND POST DEPLOYMENT APPROVALS?

      runOnce:
        deploy:
          steps:
          - download: current
            artifact: drop
          - task: AzureWebApp@1
            displayName: 'Azure App Service Deploy: website'
            inputs:
              azureSubscription: 'Resource Manager - Tailspin - Space Game'
              appName: '$(WebAppNameDev)'
              package: '$(Pipeline.Workspace)/drop/$(buildConfiguration)/*.zip'

【问题讨论】:

  • 您找到设置部署后批准的方法了吗?我也有同样的问题。
  • 没有朋友。我没有。我发现使用 YAML/YML 我们只能设置一个批准,即 Pre-approval。我们可以在我们想要的任何环境上设置它,并且批准窗口将显示给添加为批准者的用户。这就是我的全部。

标签: azure-devops yaml azure-deployment multistage-pipeline


【解决方案1】:

对于这个问题,目前,手动批准和评估工件是唯一可用的检查,它们只能在环境、服务连接和代理池上配置。

要定义对环境的批准:

  1. 在您的 Azure DevOps 项目中,转到需要保护的环境。 (详细了解creating an environment。)

  2. 导航到环境的批准和检查

  3. 选择创建,提供审批者和可选消息,然后再次选择创建以完成手动审批检查的添加。

然后在你的 yaml 文件中使用environment: 'xxx' 参数。例如:

- stage: deploy
  jobs:
  - deployment: DeployWeb
    displayName: deploy Web App
    pool:
      vmImage: 'Ubuntu-16.04'
    # creates an environment if it doesn't exist
    environment: 'multiStage'

在这种情况下,GUI 和 yaml 是相互依赖的,它不是直接的 yaml。

详情请参考本官方document

【讨论】:

  • 嗨,有没有办法设置部署后批准?非常感谢您的帮助。
猜你喜欢
  • 2022-12-10
  • 2023-02-16
  • 2021-11-03
  • 1970-01-01
  • 1970-01-01
  • 2020-10-31
  • 2020-11-23
  • 2021-09-05
  • 1970-01-01
相关资源
最近更新 更多