Как добавить утверждения до и после развертывания в многоступенчатый конвейер YAML? - PullRequest
0 голосов
/ 18 марта 2020

У меня есть многоступенчатый конвейер 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'

1 Ответ

2 голосов
/ 19 марта 2020

Для этой проблемы в настоящее время одобрение вручную и оценка артефакта являются единственными доступными проверками, и их можно настроить в средах , только для подключений служб и пулов агентов.

Чтобы определить утверждение среды:

  1. В вашем проекте Azure DevOps go для среды, которую необходимо защитить. (Подробнее о создании среды .)

    enter image description here

  2. Перейдите к Утверждения и проверки для среды.

    enter image description here

  3. Выберите Создать, предоставьте подтверждающие и дополнительное сообщение и выберите Создать снова для чтобы завершить добавление проверки утверждения вручную.

Затем используйте параметр environment: 'xxx' в файле yaml. Например:

- 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.

Подробнее см. В этом официальном документе .

...