Este documento é uma visão geral da automação de implantação.
É possível configurar o Cloud Deploy para executar automaticamente operações e tarefas relacionadas à implementação de um determinado pipeline de entrega. Essas tarefas incluem promoção de lançamento e avanço de fase.
Saiba mais sobre os recursos usados para automação de lançamentos no Cloud Deploy.
Saiba mais sobre como configurar as regras que definir como essas automações funcionam.
Ações que podem ser automatizadas
No Cloud Deploy, é possível automatizar as seguintes atividades de lançamento e implantação:
Promover uma versão
É possível configurar o Cloud Deploy para promover sua versão automaticamente após um lançamento bem-sucedido em um destino. Por exemplo, se você tiver três destinos,
dev
,staging
eprod
, é possível configurar uma automação de modo que a versão seja promovida paraprod
, sem a necessidade de intervenção humana interação, após uma implantação bem-sucedida emstaging
.Avançar um lançamento
É possível configurar o Cloud Deploy para avançar o lançamento de uma fase para no próximo, após um lançamento bem-sucedido para o destino anterior. Avanço de fase só está disponível em destinos que usam estratégia de implantação canário.
Como funciona a automação?
Cada automação está vinculada ao pipeline de entrega em que é usada. Você não pode compartilhar uma automação em vários pipelines de entrega.
Veja a seguir o processo geral de configuração e execução de um automação:
-
Esta automação está associada a um pipeline de entrega.
Você registra essa automação usando
gcloud deploy apply
.Isso cria a Recurso de automação.
Você invoca o pipeline de entrega associado a essa automação como criar uma versão.
O lançamento foi concluído com sucesso em pelo menos um destino.
No destino para que esta automação está configurada...
Se a automação for
promoteReleaseRule
:A execução aguarda a conclusão bem-sucedida do lançamento no destino de origem. O destino de origem é o
selector.targets
configurado para a automação, não noAutomationRule
.Se houver um tempo
wait
configurado, a execução também aguardará esse tempo.A versão é promovida automaticamente para o próximo destino no pipeline. progressão ou para um objetivo específico, se indicado.
Se a automação for
advanceRolloutRule
e o destino usar uma estratégia de implantação de canário:A execução aguarda a fase de origem identificada, se houver uma.
A propriedade
sourcePhase
é opcional e, se nenhuma fase de origem for especificado, cada fase do lançamento é avançada automaticamente. O o avanço automático da fase ocorre quando a fase de origem éIN_PROGRESS
, sujeito await
vez.Se houver um tempo
wait
configurado, a execução também aguardará esse tempo.Ao automatizar uma implantação canário, esse tempo de espera é usado para especificar a duração de cada fase canário.
O lançamento é avançado automaticamente dessa fase de origem para a próxima. no lançamento.
Se houver uma fase de origem adicional, ela será tratada da mesma forma, incluindo mesmo tempo de espera, se aplicável.
Recursos de Automation
Há dois recursos do Cloud Deploy específicos para automação:
Automação
Um
Automation
é um recurso filho de um pipeline de entrega e inclui as seguintes informações:- Um ponteiro para os destinos em que a automação é usada
- as regras que regem o que a automação faz e como ela faz
A configuração do recurso de Automation está descrita no documento Sobre o recurso de automação.
Quando você executa
gcloud deploy apply
em um arquivo que inclui uma automação (kind: Automation
), o Cloud Deploy cria uma recurso de automação, que associa um pipeline de entrega e um ou mais destinos a um ou mais regras de automação.Execução da automação
O
AutomationRun
é uma instância de uma automação. Ele é um indicador para seu recurso de Automation correspondente, além de informações sobre o lançamento que o gerou e outros metadados.A execução da automação é criada quando uma automação é acionada.
Saiba mais sobre os recursos de automação.
Regras Automation
Uma regra de automação define uma ação que pode ser realizada no pipeline de entrega automaticamente, além de detalhes sobre como a automação deve ser realizada.
Saiba mais sobre as regras de automação.
Permissões e papéis do Identity and Access Management necessários
Além das permissões necessárias para executar qualquer
pipeline de entrega e executar as tarefas a serem automatizadas (como avançar
um lançamento), há várias permissões que são necessárias para executar
algumas operações nos recursos Automation
e AutomationRun
:
clouddeploy.automations.create
clouddeploy.automations.delete
clouddeploy.automations.get
clouddeploy.automations.list
clouddeploy.automations.update
clouddeploy.automationRuns.cancel
clouddeploy.automationRuns.get
clouddeploy.automationRuns.list
Além dessas permissões, cada regra de automação pode exigir mais para executar a operação automatizada. Consulte Configurar regras de automação para conferir as permissões específicas necessárias por regra de automação.
Consulte Permissões e papéis do IAM Para mais informações, incluindo quais implantações Os papéis incluem essas permissões.
Criar uma automação
É possível criar uma automação, inclusive usando qualquer um dos
regras de automação disponíveis,
configurando uma automação e criando o recurso de automação usando
gcloud deploy apply
Consulte a seção a seguir (Como configurar a automação). Como configurar regras de automação.
Configurar a automação
Consulte a
Esquema do arquivo de configuração
para saber como configurar
Recurso Automation
.
Configuração da regra de automação
Além dessa configuração, você especifica regras de automação. A configuração é diferente para cada uma das regras disponíveis.
Consulte Usar regras de automação para descrições de cada das regras disponíveis.
Suspender uma automação
É possível suspender um recurso sem excluí-lo. Isso pode ser útil para testar uma automação sem afetar o pipeline de entrega. Quando você suspender uma automação, ela não será executada, registros de plataforma ainda são gerados.
Na Configuração do
Automation
, Atualize a propriedadesuspended
paratrue
.Execute
gcloud deploy apply
nesse arquivo de configuração.Os registros da plataforma ainda são gerados quando a automação é instanciada, mesmo que esteja suspensa. Você pode usar isso para testar e depurar a automação sem afetar o pipeline de entrega.
A seguir
Confira o guia de início rápido: automatizar a criação de versões e o avanço do lançamento.
Saiba mais sobre o Cloud Deploy regras de automação.
Saiba mais sobre o Cloud Deploy os recursos de automação.
Consulte a documentação do esquema de arquivos de configuração para detalhes sobre os arquivos de configuração de automação.