Valide a implementação

Este documento descreve como validar uma implementação do Cloud Deploy.

Pode configurar o Cloud Deploy e o Skaffold para verificar se uma aplicação que implementou em qualquer destino está a funcionar corretamente. A validação é feita através da sua própria imagem de teste e configura o Cloud Deploy e o Skaffold para executar esses testes após a conclusão da implementação.

Por predefinição, a validação da implementação é executada no ambiente de execução do Cloud Deploy, mas também pode configurá-la para ser executada no mesmo cluster onde a aplicação está a ser executada.

Como funciona a validação da implementação?

  1. Configura o Skaffold para validação.

    Esta configuração identifica a imagem (ou as imagens) do contentor a usar para executar testes e os comandos específicos (por exemplo, um script) a executar a partir dessa imagem do contentor.

    Pode especificar mais do que uma imagem de contentor. Se especificar vários contentores, estes são executados em paralelo e não sequencialmente.

  2. Configura um ou mais alvos no pipeline de entrega para validação da implementação.

    Esta configuração ativa a validação para cargas de trabalho implementadas nesse destino.

  3. Após a implementação de uma implementação (skaffold apply), o Cloud Deploy executa o comando skaffold verify no ambiente de execução do Cloud Deploy.

    Para implementações no Google Kubernetes Engine e em clusters anexados do GKE, pode executar opcionalmente o contentor (ou os contentores) de validação no mesmo cluster em que o contentor da aplicação está a ser executado.

  4. O Skaffold invoca o teste ou os testes especificados na secção verify do seu skaffold.yaml para execução na aplicação implementada.

  5. O êxito ou a falha dos testes executados indica o êxito ou a falha da validação.

    • O êxito da validação é determinado pelo código de saída do contentor executado.

      0 indica sucesso. Um código de saída diferente de zero indica uma falha. Para gerar o resultado de validação pretendido, certifique-se de que o contentor termina com o código de saída adequado. Se mais do que um contentor for executado como parte da validação, todos têm de ser bem-sucedidos para que a validação seja bem-sucedida.

    • Se a validação falhar, a implementação também falha.

    • Se uma implementação falhar durante a validação, pode ver isso inspecionando a implementação:

      Detalhes na consola Google Cloud para a implementação, incluindo o estado da validação

  6. Pode ignorar ou tentar novamente uma validação falhada.

    Também pode terminar uma tarefa de validação em curso.

Componentes usados para a validação

O recurso rollout inclui os seguintes objetos, que suportam a validação da implementação:

  • Fase

    A coleção de operações (tarefas) numa implementação que estão logicamente agrupadas, por exemplo, uma implementação ou uma implementação e validação.

  • Emprego

    A operação específica a ser realizada numa implementação, como implementar ou validar.

  • Execução de tarefa

    Um elemento subordinado do recurso de implementação, a execução da tarefa é uma instância de uma tarefa, por exemplo, uma tentativa de implementação.

Para saber mais sobre os recursos do Cloud Deploy, consulte o artigo Arquitetura do serviço Cloud Deploy

Notificações geradas pela validação da implementação

O Cloud Deploy gera mensagens do Pub/Sub e publica-as para os seguintes eventos: