Depois de criar e implantar sua função do Cloud Run, especifique um acionador para que a função seja executada em resposta a vários cenários. Esta página oferece uma visão geral dos gatilhos compatíveis com o Cloud Run functions.
Tipos de acionadores
Por padrão, todas as funções implantadas no Cloud Run são
serviços implantados pelo código do Cloud Run
que têm um endpoint HTTP (URL run.app
).
A forma como a função é invocada ou acionada depende do tipo de função especificado ao escrever o código.
- Acionadores orientados a eventos: reagem a eventos no projeto Google Cloud e correspondem a funções orientadas a eventos, também chamadas de funções do CloudEvent. É necessário usar o Eventarc, a implementação do Google da especificação do CloudEvents que oferece suporte à criação de arquiteturas orientadas a eventos, para acionar funções em resposta a eventos especificados.
- Acionadores HTTP: reagem a solicitações HTTP(S) e correspondem a funções HTTP. É possível usar outros serviçosGoogle Cloud (que não são do Eventarc) como um provedor de eventos para invocar a função por meio de solicitações HTTP(S).
Para acionar uma função que reaja a eventos no projeto Google Cloud , especifique os gatilhos como parte da implantação da função no console Google Cloud ou depois que a função for implantada ao usar a CLI gcloud.
Não é possível vincular a mesma função a mais de um gatilho por vez, mas é possível fazer com que o mesmo evento cause a execução de várias funções implantando várias funções com as mesmas configurações de gatilho.
Exemplos de acionadores
Confira abaixo exemplos de gatilhos compatíveis com o Cloud Run functions:
Acionadores orientados a eventos:
- Eventos do Pub/Sub acionados pelo Eventarc
- Eventos do Cloud Storage acionados pelo Eventarc
- Eventos do Firestore acionados pelo Eventarc
- Outros gatilhos de evento
- Compatível com qualquer tipo de evento aceito pelo Eventarc, incluindo mais de 90 origens de eventos usando os registros de auditoria do Cloud
Gatilhos HTTP:
- Invocar com uma solicitação HTTP
- Invocar serviços como parte de um fluxo de trabalho com o Workflows
- Invocar serviços em uma programação com o Cloud Scheduler
- Usar o Cloud Tasks para executar tarefas assíncronas
- Acionar serviços de uma assinatura de push do Pub/Sub
- As mensagens do Pub/Sub podem ser roteadas diretamente para uma função por meio de solicitações HTTP ou agrupadas no Eventarc como um acionador orientado a eventos.
Todas as funções orientadas a eventos usam o Eventarc para a entrega de eventos. Os gatilhos do Pub/Sub e do Cloud Storage são implementados como tipos específicos de gatilhos do Eventarc.
Outros gatilhos usando o Pub/Sub e webhooks
Como o Cloud Run functions pode ser acionado por mensagens em um tópico do Pub/Sub, é possível integrar o Cloud Run functions a qualquer outro serviço do Google compatível com o Pub/Sub como um barramento de eventos. Além disso, com os gatilhos HTTP, também é possível fazer a integração com qualquer serviço que forneça callbacks HTTP (webhooks). As seções a seguir descrevem alguns exemplos de integrações.
Cloud Logging
O Cloud Logging pode encaminhar registros para um tópico do Pub/Sub, em que eles podem ser consumidos pelo Cloud Run functions. Consulte Configurar e gerenciar coletores na documentação do Cloud Logging para mais informações.
Cloud Scheduler
É possível programar uma função HTTP criando um job do Cloud Scheduler que aciona uma ação usando HTTP.
Também é possível programar uma função baseada em eventos quando ela precisa ser acionada diretamente em resposta a eventos no projeto Google Cloud . Por exemplo, quando uma mensagem é publicada em um tópico do Pub/Sub.
Cloud Tasks
As tarefas de destino HTTP do Cloud Tasks permitem que você execute gerenciadores de tarefas em qualquer endpoint HTTP. Portanto, uma função HTTP com um gatilho HTTP pode ser usada como um gerenciador de tarefas. Também é possível usar tarefas para limitar invocações de função. Consulte Criar tarefas de destino HTTP na documentação do Cloud Tasks para mais informações.
Gmail
Com a API Push Notification do Gmail, é possível enviar eventos do Gmail para um tópico do Pub/Sub e consumi-los com o Cloud Run.