Acionar um fluxo de trabalho com eventos ou mensagens do Pub/Sub
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
É possível usar um gatilho do Eventarc para executar um fluxo de trabalho como resultado de um evento ou um conjunto de eventos. Os eventos são roteados de um provedor de eventos para receptores de eventos interessados.
Em resposta a eventos diretos, como uma atualização de um bucket do Cloud Storage
ou de um modelo da Configuração remota do Firebase. Por exemplo, consulte
este guia de início rápido em que você aciona o Workflows com eventos
diretos do Cloud Storage.
Por mensagens publicadas em um tópico do Pub/Sub. Por exemplo, consulte este
início rápido em que você aciona Workflows com
mensagens do Pub/Sub.
Observe o seguinte:
Os eventos são considerados entregues assim que a execução do fluxo de trabalho começa, e
a execução real ocorre de forma assíncrona nos serviços
do Workflows.
As execuções acionadas por eventos não são repetidas se a execução do fluxo de trabalho
começar, mas falhar depois. Para mais informações, consulte a
Política de nova tentativa de eventos.
A janela de eliminação de duplicação do Workflows para garantir o processamento
de eventos exatamente uma vez é de 24 horas.
Ao usar o Workflows como destino para um
gatilho do Eventarc, eventos maiores que o tamanho máximo do
argumento do Workflows não acionarão as execuções de fluxo de trabalho.
Para mais informações, consulte Cotas e limites.
Em projetos protegidos por um perímetro de serviço, ao rotear eventos para destinos do Workflows em que o endpoint de push do Pub/Sub está definido como uma execução do Workflows, só é possível criar novas assinaturas de push do Pub/Sub pelo Eventarc. A conta de serviço usada na autenticação por push
do endpoint do Workflows precisa ser incluída no
perímetro de serviço. Para mais informações, consulte
Configurar um perímetro de serviço usando o VPC Service Controls.
Criar um gatilho usando a Google Cloud CLI
Para criar um gatilho, execute um comando gcloud eventarc triggers create
com as sinalizações obrigatórias e opcionais.
Selecione um projeto e clique em Criar conta de serviço.
No campo Nome da conta de serviço, insira um nome com entre 6 e 30 caracteres.
Ele pode conter caracteres alfanuméricos minúsculos e
traços. Depois de criar uma conta de serviço, não é possível alterar o nome dela.
Clique em Criar e continuar.
Conceda à nova conta de serviço o papel
workflows.invoker para que a conta
tenha permissão para acionar o fluxo de trabalho. Na lista Selecionar um papel, selecione Workflows > Invocador de fluxos de trabalho.
Selecione a conta de serviço que invoca o fluxo de trabalho.
Isso especifica a conta de serviço do IAM a que você
concedeu anteriormente o papel workflows.invoker para que ela tenha
permissão para acionar seu fluxo de trabalho.
Clique em Salvar acionador.
O gatilho do Eventarc está listado na guia Gatilhos
da página Detalhes de fluxos de trabalho.
Para atualizar ou excluir o gatilho, edite o fluxo de trabalho:
Na página Detalhes do fluxo de trabalho, clique em
editExecutar.
Na seção Acionadores, encontre o acionador que você quer atualizar ou excluir.
Clique em editEditar recurso ou
deleteExcluir recurso.
A execução do fluxo de trabalho agora é acionada pelos eventos que correspondem aos critérios de filtro do gatilho.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-09-04 UTC."],[],[],null,["# Trigger a workflow with events or Pub/Sub messages\n\nYou can use an Eventarc trigger to execute a workflow as a\nresult of an event or a set of events. The events are routed from an event\nprovider to interested event receivers.\n\nEventarc delivers events to the event receiver in the CloudEvents\nformat through an HTTP request. The Workflows service converts the\nevent to a JSON object (following the\n[CloudEvents specification](/eventarc/docs/workflows/cloudevents))\nand passes the event into the workflow execution as a\n[workflow runtime argument](/workflows/docs/passing-runtime-arguments).\n\nAn execution of your workflow is triggered:\n\n- When an **audit log is created** that matches the trigger's filter criteria. For example, see this quickstart in which you trigger Workflows with [events from BigQuery using Cloud Audit Logs](/eventarc/docs/workflows/quickstart-cal).\n- In response to **direct events** such as an update to a Cloud Storage bucket or an update to a Firebase Remote Config template. For example, see this quickstart in which you trigger Workflows with [direct\n events from Cloud Storage](/eventarc/docs/workflows/quickstart-storage).\n- By **messages published to a Pub/Sub topic** . For example, see this quickstart in which you trigger Workflows with [Pub/Sub messages](/eventarc/docs/workflows/quickstart-pubsub).\n\nNote the following:\n\n- Events are considered delivered as soon as the workflow execution starts, and\n the actual execution takes place asynchronously in the Workflows\n services.\n\n- Executions triggered by events are not retried if the workflow execution\n starts, but later fails. For more information, see the\n [Event retry policy](/eventarc/docs/overview#event_retry_policy).\n\n- The Workflows deduplication window to ensure exactly-once\n processing of events is 24 hours.\n\n- When using Workflows as the destination for an\n Eventarc trigger, events larger than the maximum\n Workflows argument size will fail to trigger workflow executions.\n For more information, see [Quotas and limits](/workflows/quotas).\n\n- In projects protected by a service perimeter, when routing events to\n Workflows destinations for which the Pub/Sub\n push endpoint is set to a Workflows execution, you can only\n create new Pub/Sub push subscriptions through\n Eventarc. Note that the service account used for push\n authentication for the Workflows endpoint must be included in\n the service perimeter. For more information, see\n [Set up a service perimeter using VPC Service Controls](/eventarc/docs/using-vpc-service-controls).\n\nCreate a trigger using the Google Cloud CLI\n-------------------------------------------\n\nYou can create a trigger by running a `gcloud eventarc triggers create` command\nalong with required and optional flags.\n\nFor more information, see the **gcloud** instructions in the \"Create a\ntrigger\" section when\n[creating a trigger for a specific provider, event type, and Workflows destination](/eventarc/docs/targets#triggers).\n\nCreate a trigger using the console\n----------------------------------\n\nThe following steps show you how to create a trigger on the\n**Workflows** page in the Google Cloud console.\n\n### Before you begin\n\n1.\n\n\n Enable the Eventarc and Pub/Sub APIs.\n\n\n [Enable the APIs](https://console.cloud.google.com/flows/enableapi?apiid=eventarc.googleapis.com,pubsub.googleapis.com)\n2. Create a [service account](/workflows/docs/authentication)\n so that Eventarc can make requests to the Workflows API:\n\n 1. In the Google Cloud console, go to the **Service Accounts** page.\n\n\n [Go to Service Accounts](https://console.cloud.google.com/projectselector2/iam-admin/serviceaccounts)\n\n \u003cbr /\u003e\n\n 2. Select a project and then click **Create service account**.\n\n 3. In the **Service account name** field, enter a name that is between 6 and\n 30 characters.\n\n It can contain lowercase alphanumeric characters and\n dashes. After you create a service account, you cannot change its name.\n 4. Click **Create and continue**.\n\n 5. Grant your new service account the\n [workflows.invoker](/workflows/docs/access-control#roles) role so that the\n account has permission to trigger your workflow. In the **Select a role**\n list, select **Workflows \\\u003e Workflows Invoker**.\n\n If you are developing a production app, always grant the least permissive roles\n possible. For more information, see\n [Manage access to projects, folders, and organizations](/iam/docs/granting-roles-to-service-accounts).\n 6. Click **Done**.\n\n3. To allow the principal that will run your Eventarc\n commands the ability to act as an Identity and Access Management (IAM) service\n account,\n [grant a role that allows the principal to impersonate the service account](/iam/docs/service-account-permissions#roles).\n\n### Configure the trigger\n\n1. If you don't already have a workflow that you want to trigger,\n [create and deploy one](/workflows/docs/creating-updating-workflow#creating_a_workflow).\n\n2. In the Google Cloud console, go to the **Workflows** page:\n\n\n [Go to Workflows](https://console.cloud.google.com/workflows)\n\n \u003cbr /\u003e\n\n3. On the Workflows page, select a workflow to go to its details\n page.\n\n4. On the **Workflow Details** page, click\n *edit* **Edit**.\n\n5. On the **Edit workflow** page, select **Add new trigger \\\u003e\n Eventarc**.\n\n The **Eventarc trigger** pane opens.\n6. Follow the instructions to\n [create a trigger for a specific provider, event type, and\n Workflows destination](/eventarc/standard/docs/event-providers-targets#triggers)\n and refer to the **Console** instructions in the \"Create a trigger\" section.\n\n7. Select the **Service account** that invokes your workflow.\n\n This specifies the IAM service account to which you\n previously granted the `workflows.invoker` role so that the account has\n permission to trigger your workflow.\n8. Click **Save trigger**.\n\n | **Note:** If you are updating an existing workflow, you do *not* need to redeploy the workflow. However, if you are creating a new workflow, you must also deploy the workflow.\n\n The Eventarc trigger is listed on the **Triggers**\n tab of the **Workflows Details** page.\n9. If you want to update or delete the trigger, you must edit the workflow:\n\n 1. On the **Workflow Details** page, click *edit* **Edit**.\n 2. In the **Triggers** section, find the trigger you want to update or delete.\n 3. Click *edit* **Edit resource** or *delete* **Delete resource**.\n\nYour workflow execution is now triggered by the events that match your trigger's\nfilter criteria.\n\nCreate a trigger using Terraform\n--------------------------------\n\nYou can create a trigger for a workflow using Terraform. For details, see\n[Trigger a workflow using Eventarc and Terraform](/eventarc/docs/creating-triggers-terraform).\n\nWhat's next\n-----------\n\n- [Learn more about Eventarc](/eventarc/docs/overview)"]]