Nesta página, descrevemos como criar o pipeline de entrega e os destinos que descrever onde e como o Cloud Deploy vai implantar o aplicativo. Consulte o Esquema do arquivo de configuração para uma descrição da estrutura de arquivos YAML para pipelines de entrega e destinos.
Sobre os destinos e o pipeline de entrega
O pipeline de entrega descreve uma progressão dos destinos de implantação. É possível definir essas metas no mesmo arquivo que o pipeline de entrega ou em um ou mais arquivos separados.
Depois de criar o pipeline de entrega e o arquivo ou os arquivos de definição de destino, execute gcloud deploy apply
em cada um desses arquivos para registrá-los como recursos do Cloud Deploy.
Definir o pipeline de entrega e os destinos
A estrutura do pipeline de entrega e dos arquivos de configuração de destino são descritas aqui.
Você pode chamar esse arquivo como quiser. Por convenção, um config de pipeline de entrega que inclui definições de destino é chamado clouddeploy.yaml
e um que, em vez disso, faz referência a destinos definidos em um ou mais arquivos separados são chamados de delivery-pipeline.yaml
.
O destino pode apontar para o GKE, GKE Enterprise, ou o Cloud Run. Em um objeto pipeline de entrega, todos os destinos devem fazer referência ao mesmo tipo de ambiente de execução (todos GKE ou todo o GKE Enterprise, por exemplo).
Criar um pipeline de entrega e destinos usando o console do Google Cloud
Use o console do Google Cloud para criar um novo pipeline de entrega e alvos. Isso é útil para testar o Cloud Deploy, mas não é adequado para cargas de trabalho de produção. Também é possível usar o console do Google Cloud para criar uma versão.
Para criar o pipeline de entrega:
Na página Pipelines de entrega, clique em Criar.
Forneça um nome (ou mantenha o padrão) e, se quiser, uma descrição.
Selecione sua região.
Escolha o ambiente de execução.
Para o GKE, escolha Google Kubernetes Engine ou selecione Cloud Run, se esse for o ambiente de execução da implantação.
Em Novo destino, forneça um nome (ou mantenha o padrão).
Se você quiser exigir aprovação nesse destino, marque a caixa de seleção Exigir aprovação para lançamentos.
Se você for usar uma estratégia de implantação de canário nesse destino, marque a caixa de seleção Ativar canário.
Clique em Concluído.
Clique em Adicionar destino e siga estas etapas para cada destino adicional que você quer criar.
Quando tiver todas as metas, clique em Criar para criar o pipeline de entrega e os recursos de destino.
Registrar o pipeline de entrega e os destinos
Se você criou o pipeline e os destinos usando o console do Google Cloud, não precisa fazer isso.
Para registrar seu pipeline de entrega no Cloud Deploy, execute
gcloud deploy apply
uma vez para cada arquivo de definição separado. Ou seja, se você definir três destinos em três arquivos, execute o comando quatro vezes: uma para o pipeline de entrega e outra para o destino.
O comando a seguir registra um pipeline de entrega com os destinos definidos no mesmo arquivo.
gcloud deploy apply --file=PIPELINE_CONFIG \
--region=LOCATION \
--project=PROJECT
Agora você tem um pipeline de entrega que pode gerenciar a implantação das versões e segmentar recursos que podem ser usados por qualquer pipeline de entrega no mesmo projeto e região.
Um exemplo de arquivo único
O comando neste exemplo registra um pipeline de entrega e todos os destinos definidos no mesmo arquivo:
gcloud deploy apply --file=clouddeploy.yaml --region=us-central1
Um exemplo usando arquivos separados
Neste exemplo, existem três destinos definidos em três arquivos separados. Portanto, execute quatro comandos:
gcloud deploy apply --file=delivery-pipeline.yaml --region=us-central1 && \
gcloud deploy apply --file=target_dev.yaml --region=us-central1 && \
gcloud deploy apply --file=target_staging.yaml --region=us-central1 && \
gcloud deploy apply --file=target_prod.yaml --region=us-central1
A sinalização --region
é obrigatória, a menos que você tenha definido um padrão (usando gcloud
config set deploy/region [REGION]
). A região precisa ser a mesma para a entrega
pipeline e todos os destinos referenciados por ele.
Criar o pipeline de entrega e os destinos usando o Terraform
Você também pode usar o Provedor do Terraform para Google Cloud para criar um pipeline de entrega e target do Google Cloud.
O provedor do Terraform Beta do Google Cloud pode incluir suporte para recursos do Cloud Deploy na versão de pré-lançamento.
Editar pipelines e destinos atuais
Posteriormente, será possível editar qualquer pipeline de entrega ou configuração de destino e executar gcloud
deploy apply
para atualizar o pipeline ou o recurso de destino. Mas essas alterações não afetam as versões atuais, já que são gerenciadas pelo pipeline de entrega original.
Exigir aprovação manual para uma implantação
Para exigir aprovação manual de um determinado destino, inclua a seguinte propriedade na definição de destino:
requireApproval: true
O padrão é false
. Se você omitir essa propriedade da configuração do pipeline de entrega ou não fornecer valor para ela, a implantação nesse destino não exigirá aprovação. No entanto, o autor da chamada que está tentando promover para o destino ainda precisa da
permissão clouddeploy.rollouts.create
do IAM.
Você pode até mesmo exigir a aprovação manual no primeiro destino. Quando uma versão é criada, usando a CLI, para o primeiro destino, o rollout
é criado automaticamente. Se a aprovação for necessária, o Cloud Deploy cria a
rollout
, mas em estado de lançamento pendente até que a aprovação seja concedida.
A seguir
Consulte Como implantar o aplicativo para saber como invocar o pipeline de entrega e criar uma versão.