Usar aprovações e gates para controlar a implantação

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Usando uma combinação de aprovações de implantação manual, portões e intervenção manual em seu pipeline de lançamento, você pode configurar sua implantação de modo rápido e fácil para atender a todos os requisitos específicos de pré-implantação para seu fluxo de trabalho.

Neste tutorial, você aprenderá sobre:

  • Portões pré-implantação
  • Intervenção manual
  • Validação manual
  • Logs de implantação

Pré-requisitos

Configurar portões

Você pode usar portões para garantir que seu pipeline de lançamento atenda a critérios específicos antes da implantação sem a necessidade de intervenção do usuário.

  1. Selecione Pipelines>Versões e, em seguida, selecione o pipeline de lançamento. Selecione Editar para abrir o editor de pipeline.

    Uma captura de tela mostrando o botão editar para pipelines de lançamento.

  2. Selecione o ícone de pré-implantação para o estágio e depois selecione o botão de alternância para habilitar Portões.

    Uma captura de tela mostrando como habilitar portões.

  3. Especifique o tempo de atraso antes que a avaliação dos portões adicionados. Esse tempo é para permitir que as funções de portão inicializem e se estabilizem antes de retornarem os resultados.

    Uma captura de tela mostrando como definir o tempo de atraso para os portões pré-implantação.

  4. Selecione Adicionar e Consultar Itens de Trabalho.

    Uma captura de tela mostrando como adicionar uma tarefa de itens de trabalho de Consulta.

  5. Selecione uma consulta de item de trabalho no menu suspenso. Dependendo de quantos itens de trabalho você espera que a consulta retorne, defina seus limites máximo e mínimo.

    Uma captura de tela mostrando como configurar a tarefa Itens de trabalho de consulta.

  6. Selecione a seção Opções de avaliação e especifique o tempo limite e o intervalo de amostragem. Os valores mínimos que você pode especificar são tempo limite de 6 minutos e intervalo de amostragem de 5 minutos.

    Uma captura de tela mostrando como configurar as opções de avaliação para a tarefa de itens de trabalho de consulta.

  7. Selecione Salvar ao terminar.

    Uma captura de tela mostrando como salvar um pipeline de lançamento.

Configurar intervenção manual

Dependendo do cenário, às vezes, pode ser necessário adicionar a intervenção manual ao pipeline de lançamento. Você pode fazer isso adicionando a tarefa Intervenção Manual ao pipeline.

  1. Selecione Pipelines>Lançamentos. Selecione o pipeline de lançamento, selecione Tarefas e escolha a fase.

    Uma captura de tela mostrando como navegar para realizar tarefas em um pipeline de lançamento.

  2. Selecione as reticências (...) e Adicionar um trabalho sem agente.

    Uma captura de tela mostrando como adicionar um trabalho sem agente.

  3. Arraste e solte o trabalho sem agente na parte superior do processo de implantação. Selecione o sinal (+) e Adicionar a tarefa Intervenção Manual.

    Uma captura de tela mostrando como adicionar a tarefa de intervenção manual.

  4. Insira um Nome de exibição e as instruções que serão exibidas quando a tarefa for disparada. Você também pode especificar uma lista de usuários a serem notificados e uma ação de tempo limite (rejeitar ou retomar) se nenhuma intervenção tiver ocorrido dentro do período de tempo limite.

    Uma captura de tela mostrando como configurar a tarefa de intervenção Manual.

  5. Selecione Salvar ao terminar.

Observação

A tarefa Intervenção manual só pode ser usada em um trabalho sem agente.

Configurar validação manual

Você pode usar a tarefa Validação Manual em seu pipeline do YAML para pausar e aguardar a aprovação manual. A validação manual é especialmente útil em cenários em que você deseja validar definições de configuração ou criar pacotes antes de iniciar um trabalho com uso intensivo de computação.

O trabalho waitForValidation pausa a execução e dispara um prompt de interface do usuário para examinar e validar a tarefa. Os endereços de email listados em notifyUsers recebem uma notificação para aprovar ou negar a execução de pipeline.

Uma captura de tela mostrando o prompt de validação manual.

pool: 
   vmImage: ubuntu-latest

jobs:
- job: waitForValidation
  displayName: Wait for external validation  
  pool: server    
  timeoutInMinutes: 4320 # job times out in 3 days
  steps:   
   - task: ManualValidation@0
     timeoutInMinutes: 1440 # task times out in 1 day
     inputs:
         notifyUsers: |
            someone@example.com
         instructions: 'Please validate the build configuration and resume'
         onTimeout: 'resume'

Exibir Logs de Implantação

Os logs de implantação são úteis para depurar problemas de implantação, mas você também pode usá-los para auditar suas execuções de pipeline, verificar aprovações e ver como elas foram concedidas e por quem.

  1. Selecione Pipelines>Versões e, em seguida, selecione o pipeline de lançamento.

    Uma captura de tela mostrando uma lista de definições de versão.

  2. Esse modo de exibição mostrará um status ao vivo de cada fase em seu pipeline. A fase de garantia de qualidade nesse exemplo é uma intervenção pendente. Selecionar Retomar.

    Uma captura de tela mostrando a intervenção pendente do estágio de garantia de qualidade.

  3. Digite seu comentário e selecione Retomar.

    Uma captura de tela mostrando como responder a uma solicitação de intervenção manual pendente.

  4. A implantação da fase de Garantia de Qualidade foi bem-sucedida e as aprovações de pré-implantação são disparadas para a fase Produção.

    Uma captura de tela mostrando a aprovação de pré-implantação disparada para o próximo estágio.

  5. Selecione Aprovar, insira seu comentário e selecione Aprovar para continuar a implantação.

    Uma captura de tela mostrando como responder a uma solicitação de aprovação pendente.

  6. A status ao vivo indica que os portões estão sendo processados para a fase Produção antes que o lançamento continue.

    Uma captura de tela mostrando os portões de processamento de produção.

  7. Retorne ao pipeline de lançamento, passe o mouse sobre a fase e selecione Logs para exibir os logs de implantação.

    Uma captura de tela mostrando como acessar logs de implantação.