Acione um fluxo de trabalho com eventos ou mensagens Pub/Sub
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Pode usar um acionador do Eventarc para executar um fluxo de trabalho como resultado de um evento ou um conjunto de eventos. Os eventos são encaminhados de um fornecedor de eventos para recetores de eventos interessados.
O Eventarc envia eventos para o recetor de eventos no formato CloudEvents através de um pedido HTTP. O serviço Workflows converte o evento num objeto JSON (de acordo com a especificação CloudEvents) e passa o evento para a execução do fluxo de trabalho como um argumento de tempo de execução do fluxo de trabalho.
Em resposta a eventos diretos, como uma atualização a um contentor do Cloud Storage ou uma atualização a um modelo da Firebase Remote Config. Por exemplo, consulte
este início rápido em que aciona fluxos de trabalho com eventos diretos
do Cloud Storage.
Através de mensagens publicadas num tópico do Pub/Sub. Por exemplo, consulte este
início rápido no qual aciona os Workflows com
mensagens do Pub/Sub.
Tenha em conta o seguinte:
Os eventos são considerados entregues assim que a execução do fluxo de trabalho é iniciada 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 mais tarde. Para mais informações, consulte a
Política de novas tentativas de eventos.
A janela de remoção de duplicados dos fluxos de trabalho para garantir o processamento de eventos exatamente uma vez é de 24 horas.
Quando usa os fluxos de trabalho como destino de um acionador do Eventarc, os eventos superiores ao tamanho máximo do argumento dos fluxos de trabalho não acionam execuções de fluxos de trabalho.
Para mais informações, consulte o artigo Quotas e limites.
Em projetos protegidos por um perímetro de serviço, quando encaminha eventos para destinos do Workflows para os quais o ponto final de envio do Pub/Sub está definido para uma execução do Workflows, só pode criar novas subscrições de envio do Pub/Sub através do Eventarc. Tenha em atenção que a conta de serviço usada para a autenticação push para o ponto final Workflows tem de ser incluída no perímetro do serviço. Para mais informações, consulte o artigo
Configure um perímetro de serviço com o VPC Service Controls.
Crie um acionador com a Google Cloud CLI
Pode criar um acionador executando um comando gcloud eventarc triggers create juntamente com flags obrigatórias e opcionais.
Selecione um projeto e, de seguida, clique em Criar conta de serviço.
No campo Nome da conta de serviço, introduza um nome com entre 6 e 30 carateres.
Pode conter carateres alfanuméricos minúsculos e travessões. Depois de criar uma conta de serviço, não pode alterar o respetivo nome.
Clique em Criar e continuar.
Conceda à nova conta de serviço a função workflows.invoker para que a conta tenha autorização para acionar o seu fluxo de trabalho. Na lista Selecionar uma função, selecione Fluxos de trabalho > Workflows Invoker.
Selecione a conta de serviço que invoca o seu fluxo de trabalho.
Isto especifica a conta de serviço de IAM à qual concedeu anteriormente a função workflows.invoker para que a conta tenha autorização para acionar o seu fluxo de trabalho.
Clique em Guardar acionador.
O acionador do Eventarc é apresentado no separador Acionadores
da página Detalhes dos fluxos de trabalho.
Se quiser atualizar ou eliminar o acionador, tem de editar o fluxo de trabalho:
Na página Detalhes do fluxo de trabalho, clique em
editEditar.
Na secção Acionadores, encontre o acionador que quer atualizar ou eliminar.
Clique em editEditar recurso ou
deleteEliminar recurso.
A execução do fluxo de trabalho é agora acionada pelos eventos que correspondem aos critérios de filtro do acionador.
[[["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-08-20 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)"]]