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?
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.
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.
Após a implementação de uma implementação (
skaffold apply), o Cloud Deploy executa o comandoskaffold verifyno 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.
O Skaffold invoca o teste ou os testes especificados na secção
verifydo seuskaffold.yamlpara execução na aplicação implementada.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.
0indica 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:
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: