O Cloud Build usa acionadores de versão para ativar a automação de CI/CD. Você pode configure gatilhos para detectar eventos de entrada, como quando um novo commit é enviados para um repositório ou quando uma solicitação de envio é iniciada e, em seguida, automaticamente um build quando novos eventos chegam. Também é possível configurar acionadores para criar código em qualquer alteração no repositório de origem ou somente em alterações que correspondam a determinados critérios.
Esta página fornece uma visão geral de cada tipo de gatilho e recursos associados com gatilhos.
Gatilhos de evento do repositório
O Cloud Build permite executar builds automaticamente em eventos de repositório, como solicitações de push ou pull. Você pode conectar repositórios externos, como repositórios no GitHub ou no Bitbucket, ao Cloud Build ou usar código no Cloud Source Repositories para seus builds. É possível conectar qualquer repositório de origem O Cloud Build, o Cloud Build, oferece repositórios específicos acionadores de eventos que podem ser usados para integrar o gerenciamento de código-fonte sistemas de gerenciamento de conteúdo (SCMs). Esta seção discute os gatilhos de eventos do repositório disponíveis.
Acionadores do GitHub
É possível criar gatilhos do GitHub para executar builds automaticamente em resposta a eventos de repositório, como solicitações de push ou pull. É possível consultar a no GitHub e no console do Google Cloud. Você também pode usar o App Cloud Build GitHub para se conectar e criar código no GitHub. Para saber mais, consulte Como criar repositórios do GitHub.
Gatilhos do GitHub Enterprise
É possível criar gatilhos para repositórios hospedados em uma instância do GitHub Enterprise, incluindo instâncias hospedadas em um ambiente local e não acessíveis por uma conexão pública com a Internet. Os gatilhos do GitHub Enterprise podem ser usados para executar builds em resposta a solicitações push ou pull de uma instância do GitHub Enterprise. Para saber mais, consulte Como criar repositórios do GitHub Enterprise.
Gatilhos do GitLab Enterprise Edition
É possível criar gatilhos para repositórios hospedados em um GitLab Enterprise Edition inclusive instâncias hospedadas em redes privadas. GitLab Enterprise Gatilhos de edição podem ser usados para executar builds em resposta a envios de confirmação ou solicitações de envio associadas ao seu repositório do GitLab Enterprise Edition. Para saber mais, consulte Como criar repositórios do GitLab Enterprise Edition.
Acionadores do Bitbucket Server
É possível criar acionadores para repositórios hospedados em uma instância do Bitbucket Server, incluindo instâncias hospedadas em um ambiente local. É possível conectar seu repositório do Bitbucket Server ao Cloud Build várias vezes com várias conexões de host. Para saber mais sobre como criar gatilhos para executar builds em resposta a eventos, consulte Como criar repositórios no Bitbucket Server.
Gatilhos do Bitbucket Data Center
É possível criar acionadores para repositórios hospedados em uma instância do Bitbucket Data Center, incluindo instâncias hospedadas em um ambiente local. Os gatilhos do Bitbucket Data Center podem ser usados para executar builds em resposta a eventos, como push de confirmação ou solicitações de pull. Para saber mais, consulte Como criar repositórios no Data Center do Bitbucket.
Gatilhos do Bitbucket Cloud
É possível criar gatilhos para repositórios hospedados no Bitbucket Cloud. Os gatilhos do Bitbucket Cloud podem ser usados para executar builds em resposta a eventos, como solicitações de pull ou push de confirmação. Para saber mais, consulte Como criar repositórios do Bitbucket Cloud.
Gatilhos manuais
É possível criar gatilhos manuais para executar builds manualmente e modificar valores de variáveis de substituição definidas no momento da invocação antes de executar um build. Você também pode configurar gatilhos manuais para são executadas de acordo com uma programação. Para saber mais, consulte Crie código manualmente em repositórios de origem.
Gatilhos do Pub/Sub
É possível criar acionadores do Pub/Sub para executar builds em resposta a qualquer mensagem publicada no Pub/Sub. Por exemplo, é possível usar
gatilhos do Pub/Sub para criar em resposta a push de
imagem para o Artifact Registry. Nesse caso, você pode configurar seu gatilho para usar filtros para
executar um build somente se a imagem enviada corresponder a uma tag específica, como prod
.
Além disso, os gatilhos do Pub/Sub podem ser configurados para se inscrever
qualquer tópico do Pub/Sub. Para saber mais, consulte
Automatizar builds em resposta a eventos do Pub/Sub.
Gatilhos de webhook
É possível criar gatilhos de webhook para executar builds em resposta a webhooks. Eventos de webhook enviados para um URL personalizado permitem que você se conecte diretamente a endereços externos e sistemas de gerenciamento de código-fonte (SCMs) externos, como Bitbucket.com, Bitbucket Server ou GitLab para o Cloud Build. Quando criar gatilhos de webhook, também é possível definir a configuração do build in-line no gatilho para controlar quais repositórios o gatilho clona durante o build em vez de especificar explicitamente uma fonte. Para saber mais, consulte Automatizar builds em resposta a eventos de webhook. Além disso, para saber como usar gatilhos de webhook para criar repositórios de SCMs específicos, consulte Como criar repositórios do Bitbucket Server, Como criar repositórios do Bitbucket Cloud e Como criar repositórios do GitLab.
Recursos de gatilho
Os gatilhos do Cloud Build fornecem recursos que oferecem controle sobre como um build é executado. Esta seção discute vários recursos associados a acionadores.
Gatilhos manuais programados
É possível programar acionadores manuais para executar automaticamente builds em uma programação predefinida. Por exemplo, talvez você queira configurar um gatilho programado para executar um build todos os sábados às 6h. Para programar builds, é possível Criar um gatilho manual e invocar o gatilho usando o Cloud Scheduler. Para saber mais, consulte Programar builds.
Como filtrar eventos
O Cloud Build usa
Common Expression Language (CEL) com o
build
, nos campos listados na
Build para acessar
campos associados ao evento de build, como o ID do gatilho, a lista de imagens ou
valores de substituição diferentes. Use a string filter
para filtrar eventos de build no
arquivo de configuração do build usando qualquer campo listado no
recurso Build. Para saber
mais, consulte Usar a CEL para filtrar eventos de build.
Variáveis de substituição
Você pode especificar variáveis de substituição no seu arquivo de configuração da compilação para substituir valores específicos no tempo de compilação. Por exemplo, convém usar variáveis de substituição se um valor não for conhecido até o momento da compilação ou se você quiser reutilizar uma solicitação já existente com variáveis diferentes. O Cloud Build fornece substituições padrão que podem ser usadas para builds invocados por gatilhos, como mapeamento de variáveis para o nome do gatilho ou repositório. Você também pode definir suas próprias variáveis de substituição. Para saber mais, consulte Como substituir valores de variáveis.
Expansões de parâmetros Bash
É possível aplicar expansões de parâmetros bash a valores de variáveis de substituição. As expansões do parâmetro Bash permitem manipular strings associadas a variáveis existentes. Por exemplo, use as expansões de parâmetros bash para colocar letras maiúsculas ou substituir uma substring. Para saber mais, consulte Expansões de parâmetros balanceados.
Vinculações de payload
É possível armazenar parte do payload de eventos do gatilho como uma variável de substituição usando vinculações de payload. As variáveis associadas a um payload são chamadas de vinculações e estão disponíveis para builds invocados por eventos de push e pull. É possível usar vinculações para acessar dados adicionais relacionados ao seu build, como o autor de uma solicitação de envio. Para saber mais, consulte Vinculações de payload.
Aprovações
É possível configurar gatilhos para não executar um build imediatamente, mas marcar um build como pendente até ser aprovado. Se um usuário com permissões aprovar um pedido a criação é iniciada. Se a aprovação for negada, o build não será iniciado. Para aprender a configurar gatilhos que exigem aprovação, consulte Portabilidade se baseia na aprovação.
Notificações de status da versão
É possível configurar os notificadores do Cloud Build para detectar eventos de build
atualizações no tópico cloud-builds
do Pub/Sub. Os Notificadores podem
filtrar as mensagens recebidas pelo tópico e enviar mensagens para sua
serviços. O Cloud Build fornece e mantém um notificador implantável
imagens no
Repositório cloud-build-notifiers
.
É possível configurar notificações usando um notificador do Cloud Build,
como BigQuery,
HTTP,
Slack ou
SMTP ou
criar seu próprio notificador.
A seguir
- Saiba como criar e gerenciar gatilhos de compilação.