Eseguire un job Cloud Run che elabora i dati degli eventi salvati in Cloud Storage


Puoi utilizzare Workflows per eseguire Job Cloud Run nell'ambito di un flusso di lavoro che esegue elaborazioni di dati più complesse o che orchestra un sistema di per le offerte di lavoro esistenti.

Questo tutorial illustra come utilizzare Workflows per eseguire una un job Cloud Run che elabora i dati degli eventi archiviati in nel bucket Cloud Storage. Archiviazione del payload dell'evento in Cloud Storage. di crittografia dei dati ti consente di criptare i dati chiavi di crittografia gestite dal cliente il che non è possibile se passare i dati sugli eventi come variabili di ambiente al job Cloud Run.

Il seguente diagramma fornisce una panoramica generale:

L'evento Pub/Sub viene instradato dal trigger Eventarc a Workflows e salvato in Cloud
Cloud Storage. Il job Cloud Run elabora i dati sugli eventi archiviati nel bucket.

Obiettivi

In questo tutorial, imparerai a:

  1. Crea un job Cloud Run che elabora i dati degli eventi archiviati in in un bucket Cloud Storage.
  2. Esegui il deployment di un flusso di lavoro che:
    1. Riceve un evento come argomento.
    2. Scrive i dati del payload dell'evento nel bucket Cloud Storage.
    3. Utilizza il connettore API Cloud Run Admin per eseguire il job Cloud Run.
  3. Crea un argomento Pub/Sub in modo da potervi pubblicare un messaggio. Questo tutorial utilizza un evento Pub/Sub come esempio di come eseguire il routing utilizzando Workflows, salvando l'evento Cloud Storage per consentire l'elaborazione di un job Cloud Run i dati sugli eventi.
  4. Crea un trigger Eventarc che esegue il flusso di lavoro quando un viene scritto nell'argomento Pub/Sub.
  5. Attiva il flusso di lavoro scrivendo un messaggio in Pub/Sub per ogni argomento.

Costi

In questo documento vengono utilizzati i seguenti componenti fatturabili di Google Cloud:

Per generare una stima dei costi basata sull'utilizzo previsto, utilizza il Calcolatore prezzi. I nuovi utenti di Google Cloud potrebbero essere idonei per una prova gratuita.

Prima di iniziare

I vincoli di sicurezza definiti dalla tua organizzazione potrebbero impedirti di completare i passaggi seguenti. Per informazioni sulla risoluzione dei problemi, vedi Sviluppare applicazioni in un ambiente Google Cloud vincolato.

Prima di iniziare questo tutorial, devi abilitare API specifiche e creare un'istanza gestito dall'utente. Devi concedere all'account di servizio i ruoli e autorizzazioni necessarie per poter indirizzare gli eventi utilizzando Eventarc trigger ed eseguire un flusso di lavoro.

Console

  1. Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  4. Abilita le API Cloud Build, Cloud Run, Cloud Storage, Eventarc, and Workflows.

    Abilita le API

  5. Create a service account:

    1. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    2. Select your project.
    3. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    4. Click Create and continue.
    5. Grant the following roles to the service account: Cloud Run Admin, Eventarc Event Receiver, Logs Writer, Storage Object Creator, Workflows Invoker.

      To grant a role, find the Select a role list, then select the role.

      To grant additional roles, click Add another role and add each additional role.

    6. Click Continue.
    7. Click Done to finish creating the service account.

  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  7. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  8. Abilita le API Cloud Build, Cloud Run, Cloud Storage, Eventarc, and Workflows.

    Abilita le API

  9. Create a service account:

    1. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    2. Select your project.
    3. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    4. Click Create and continue.
    5. Grant the following roles to the service account: Cloud Run Admin, Eventarc Event Receiver, Logs Writer, Storage Object Creator, Workflows Invoker.

      To grant a role, find the Select a role list, then select the role.

      To grant additional roles, click Add another role and add each additional role.

    6. Click Continue.
    7. Click Done to finish creating the service account.

  10. Se hai abilitato l'agente di servizio Cloud Pub/Sub su o prima dell'8 aprile 2021 per supportare il push autenticato di Pub/Sub richieste, concedi Servizio Ruolo Creatore token account (roles/iam.serviceAccountTokenCreator) all'agente di servizio. In caso contrario, questo ruolo viene concesso per impostazione predefinita:
    1. Nella console Google Cloud, vai alla IAM.

      Vai a IAM.

    2. Seleziona Includi concessioni dei ruoli fornite da Google. casella di controllo.
    3. Nella colonna Nome, individua la Account di servizio Cloud Pub/Sub quindi fai clic su Modifica principal nella riga corrispondente.
    4. Fai clic su Aggiungi ruolo o Aggiungi un altro ruolo.
    5. Nell'elenco Seleziona un ruolo, filtra per Creatore token account di servizio, quindi seleziona il ruolo.
    6. Fai clic su Salva.
  11. Nella console Google Cloud, attiva Cloud Shell.

    Attiva Cloud Shell

    Nella parte inferiore della console Google Cloud viene avviata una sessione di Cloud Shell che mostra un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già installato e con valori già impostati per il progetto attuale. L'inizializzazione della sessione può richiedere alcuni secondi.

  12. Cloud Shell supporta i passaggi della riga di comando in questo tutorial.
.

gcloud

  1. Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
  2. Installa Google Cloud CLI.
  3. Per initialize gcloud CLI, esegui questo comando:

    gcloud init
  4. Create or select a Google Cloud project.

    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  5. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  6. Abilita le API Cloud Build, Cloud Run, Cloud Storage, Eventarc, and Workflows.

    gcloud services enable cloudbuild.googleapis.com run.googleapis.com storage.googleapis.com eventarc.googleapis.com workflows.googleapis.com
  7. Set up authentication:

    1. Create the service account:

      gcloud iam service-accounts create SERVICE_ACCOUNT_NAME

      Replace SERVICE_ACCOUNT_NAME with a name for the service account.

    2. Grant roles to the service account. Run the following command once for each of the following IAM roles: roles/eventarc.eventReceiver, roles/logging.logWriter, roles/run.admin, roles/storage.objectCreator, roles/workflows.invoker :

      gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com" --role=ROLE

      Replace the following:

      • SERVICE_ACCOUNT_NAME: the name of the service account
      • PROJECT_ID: the project ID where you created the service account
      • ROLE: the role to grant
  8. Installa Google Cloud CLI.
  9. Per initialize gcloud CLI, esegui questo comando:

    gcloud init
  10. Create or select a Google Cloud project.

    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  11. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  12. Abilita le API Cloud Build, Cloud Run, Cloud Storage, Eventarc, and Workflows.

    gcloud services enable cloudbuild.googleapis.com run.googleapis.com storage.googleapis.com eventarc.googleapis.com workflows.googleapis.com
  13. Set up authentication:

    1. Create the service account:

      gcloud iam service-accounts create SERVICE_ACCOUNT_NAME

      Replace SERVICE_ACCOUNT_NAME with a name for the service account.

    2. Grant roles to the service account. Run the following command once for each of the following IAM roles: roles/eventarc.eventReceiver, roles/logging.logWriter, roles/run.admin, roles/storage.objectCreator, roles/workflows.invoker :

      gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com" --role=ROLE

      Replace the following:

      • SERVICE_ACCOUNT_NAME: the name of the service account
      • PROJECT_ID: the project ID where you created the service account
      • ROLE: the role to grant
  14. Se hai abilitato l'agente di servizio Cloud Pub/Sub entro aprile 8 febbraio 2021, per supportare le richieste push di Pub/Sub autenticate, il Servizio Ruolo Creatore token account (roles/iam.serviceAccountTokenCreator) all'agente di servizio. In caso contrario, questo ruolo viene concesso per impostazione predefinita:
    gcloud projects add-iam-policy-binding PROJECT_ID \
        --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-pubsub.iam.gserviceaccount.com \
        --role=roles/iam.serviceAccountTokenCreator
  15. Sostituisci PROJECT_NUMBER con il tuo Google Cloud del progetto. Puoi trovare il numero del tuo progetto nella Ti diamo il benvenuto della console Google Cloud o eseguendo questo comando:

    gcloud projects describe PROJECT_ID --format='value(projectNumber)'

Crea un job Cloud Run

Questo tutorial utilizza un codice campione che puoi trovare su GitHub. Il deployment crea un'immagine container per creare un job Cloud Run. La crea anche un bucket Cloud Storage. La Il job Cloud Run legge tutti i dati sugli eventi archiviati nel bucket Cloud Storage, quindi stampa i dati sugli eventi.

  1. Recupera il codice campione clonando il repository dell'app di esempio nel tuo locale macchina:

    git clone https://github.com/GoogleCloudPlatform/workflows-demos.git
    

    In alternativa, puoi scarica l'esempio come file ZIP

  2. Passa alla directory che contiene il codice di esempio:

    cd workflows-demos/cloud-run-jobs-payload-gcs/message-payload-job
    
  3. Crea il job Cloud Run eseguendo lo script di deployment:

    ./deploy-job.sh
    

Lo script crea un bucket Cloud Storage con il nome message-payload-PROJECT_ID, dove PROJECT_ID è l'ID del tuo progetto Google Cloud. Viene creato anche un job Cloud Run denominato message-payload-job.

Esegui il deployment di un flusso di lavoro che esegue il job Cloud Run

definisci ed esegui il deployment di un flusso di lavoro che esegue il job Cloud Run che hai appena creato. Una definizione di flusso di lavoro è composta da una serie di passaggi descritta utilizzando la sintassi di Workflows.

Il flusso di lavoro riceve un evento e li salva in un file di Cloud Storage ed esegue un job Cloud Run per elaborare l'evento e i dati di Google Cloud.

Console

  1. Nella console Google Cloud, vai alla Pagina Flussi di lavoro:

    Vai a Flussi di lavoro

  2. Clic Crea.

  3. Inserisci un nome per il nuovo flusso di lavoro, ad esempio message-payload-workflow.

  4. Scegli una regione appropriata. ad esempio us-central1.

  5. Nel campo Account di servizio, seleziona l'account di servizio creati in precedenza.

    L'account di servizio funge da identità del flusso di lavoro. Dovresti avere sono già stati concessi i seguenti ruoli all'account di servizio:

    • Amministratore Cloud Run: per eseguire job Cloud Run
    • Writer log: per scrivere le voci di log
    • Creatore oggetti Storage: per creare oggetti in Cloud Storage
  6. Fai clic su Avanti.

  7. Nell'editor del flusso di lavoro, inserisci la seguente definizione per il tuo flusso di lavoro personalizzato:

    main:
        params: [event]
        steps:
            - init:
                assign:
                    - project_id: ${sys.get_env("GOOGLE_CLOUD_PROJECT_ID")}
                    - event_bucket: ${"message-payload-" + project_id}
                    - event_file: ${event.id + ".data.json"}
                    - job_name: message-payload-job
                    - job_location: us-central1
            - log_event:
                call: sys.log
                args:
                    data: ${event}
            - write_payload_to_gcs:
                call: http.post
                args:
                    url: ${"https://storage.googleapis.com/upload/storage/v1/b/" + event_bucket + "/o"}
                    auth:
                        type: OAuth2
                    query:
                        name: ${event_file}
                    body:
                        ${event.data}
            - run_job_to_process_payload:
                call: googleapis.run.v1.namespaces.jobs.run
                args:
                    name: ${"namespaces/" + project_id + "/jobs/" + job_name}
                    location: ${job_location}
                    body:
                        overrides:
                            containerOverrides:
                                env:
                                    - name: INPUT_BUCKET
                                      value: ${event_bucket}
                                    - name: INPUT_FILE
                                      value: ${event_file}
                result: job_execution
            - finish:
                return: ${job_execution}
  8. Fai clic su Esegui il deployment.

gcloud

  1. Crea un file di codice sorgente per il tuo flusso di lavoro:

    touch message-payload-workflow.yaml
    
  2. Copia la seguente definizione di flusso di lavoro in message-payload-workflow.yaml:

    main:
        params: [event]
        steps:
            - init:
                assign:
                    - project_id: ${sys.get_env("GOOGLE_CLOUD_PROJECT_ID")}
                    - event_bucket: ${"message-payload-" + project_id}
                    - event_file: ${event.id + ".data.json"}
                    - job_name: message-payload-job
                    - job_location: us-central1
            - log_event:
                call: sys.log
                args:
                    data: ${event}
            - write_payload_to_gcs:
                call: http.post
                args:
                    url: ${"https://storage.googleapis.com/upload/storage/v1/b/" + event_bucket + "/o"}
                    auth:
                        type: OAuth2
                    query:
                        name: ${event_file}
                    body:
                        ${event.data}
            - run_job_to_process_payload:
                call: googleapis.run.v1.namespaces.jobs.run
                args:
                    name: ${"namespaces/" + project_id + "/jobs/" + job_name}
                    location: ${job_location}
                    body:
                        overrides:
                            containerOverrides:
                                env:
                                    - name: INPUT_BUCKET
                                      value: ${event_bucket}
                                    - name: INPUT_FILE
                                      value: ${event_file}
                result: job_execution
            - finish:
                return: ${job_execution}
  3. Esegui il deployment del flusso di lavoro inserendo il comando seguente:

    gcloud workflows deploy message-payload-workflow \
        --location=us-central1 \
        --source=message-payload-workflow.yaml \
        --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
    

    Sostituisci quanto segue:

    • SERVICE_ACCOUNT_NAME: il nome di l'account di servizio che hai creato in precedenza
    • PROJECT_ID: l'ID del tuo Progetto Google Cloud

    L'account di servizio funge da identità del flusso di lavoro. Dovresti avere sono già stati concessi i seguenti ruoli all'account di servizio:

    • roles/logging.logWriter: per scrivere le voci di log
    • roles/run.admin: per eseguire job Cloud Run
    • roles/storage.objectCreator: per creare oggetti in Cloud Storage

Il flusso di lavoro effettua le seguenti operazioni:

  1. Passaggio init: accetta un evento come argomento e imposta le variabili necessarie.

  2. Passaggio log_event: crea una voce di log in Cloud Logging utilizzando la funzione sys.log.

  3. write_payload_to_gcs passaggio: effettua una richiesta HTTP POST e scrive l'evento di caricare i dati in un file di bucket Cloud Storage.

  4. run_job_to_process_payload passaggio: utilizza il connettore API Cloud Run Admin , googleapis.run.v1.namespaces.jobs.run per eseguire il job. Il bucket Cloud Storage e il nome file di dati sono passate come variabili di override dal flusso di lavoro al job.

  5. Passaggio finish: restituisce informazioni sull'esecuzione del job in seguito a nel flusso di lavoro.

crea un argomento Pub/Sub

Crea un argomento Pub/Sub in modo da potervi pubblicare un messaggio. Un evento Pub/Sub viene utilizzato per dimostrare come instradare un evento utilizzando Workflows e salvando l'evento in Cloud Storage in modo che un job Cloud Run possa elaborare i dati sugli eventi.

Console

  1. Nella console Google Cloud, vai alla pagina Argomenti.

    Vai ad Argomenti

  2. Fai clic su Crea argomento.

  3. Nel campo ID argomento, inserisci un ID per l'argomento, ad esempio message-payload-topic.

  4. Mantieni l'opzione Aggiungi un abbonamento predefinito.

  5. Non selezionare le altre opzioni.

  6. Fai clic su Crea.

gcloud

Per creare un argomento con ID message-payload-topic, esegui l' gcloud pubsub topics create :

gcloud pubsub topics create message-payload-topic

Crea un trigger Eventarc per il routing degli eventi al flusso di lavoro

Eseguire automaticamente il flusso di lavoro e, a sua volta, Cloud Run un job, crea un trigger Eventarc che risponda eventi Pub/Sub e che li instrada al flusso di lavoro. Ogni volta che un messaggio viene scritto nell'argomento Pub/Sub, l'evento attiva un'esecuzione del flusso di lavoro.

Console

  1. Nella console Google Cloud, vai alla Pagina Flussi di lavoro:

    Vai a Flussi di lavoro

  2. Fai clic sul nome del flusso di lavoro, ad esempio message-payload-workflow.

  3. Nella pagina Dettagli flusso di lavoro, fai clic su Modifica.

  4. Nella sezione Trigger della pagina Modifica flusso di lavoro, fai clic su Aggiungi nuovo trigger > Eventarc.

    Si apre il riquadro Trigger Eventarc.

  5. Nel campo Nome trigger, inserisci un nome per l'attivatore, ad esempio message-payload-trigger.

  6. Nell'elenco Provider di eventi, seleziona Cloud Pub/Sub.

  7. Nell'elenco Evento, seleziona google.cloud.pubsub.topic.v1.messagePublished.

  8. Nell'elenco Seleziona un argomento Cloud Pub/Sub, seleziona all'argomento Pub/Sub creato in precedenza.

  9. Nel campo Account di servizio, seleziona l'account di servizio creati in precedenza.

    L'account di servizio funge da identità del trigger. Dovresti avere sono già stati concessi i seguenti ruoli all'account di servizio:

    • Ricevitore eventi Eventarc: per ricevere gli eventi
    • Invoker dei flussi di lavoro: per eseguire flussi di lavoro
  10. Fai clic su Salva trigger.

    Il trigger Eventarc ora viene visualizzato nella sezione Trigger della pagina Modifica flusso di lavoro.

  11. Fai clic su Avanti.

  12. Fai clic su Esegui il deployment.

gcloud

Crea un trigger Eventarc eseguendo questo comando:

gcloud eventarc triggers create message-payload-trigger \
    --location=us-central1 \
    --destination-workflow=message-payload-workflow \
    --destination-workflow-location=us-central1 \
    --event-filters="type=google.cloud.pubsub.topic.v1.messagePublished" \
    --transport-topic=projects/PROJECT_ID/topics/message-payload-topic \
    --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del tuo progetto Google Cloud
  • SERVICE_ACCOUNT_NAME: il nome del servizio creato in precedenza.

L'account di servizio funge da identità del trigger. Dovresti avere sono già stati concessi i seguenti ruoli all'account di servizio:

  • roles/eventarc.eventReceiver: per ricevere eventi
  • roles/workflows.invoker: per eseguire flussi di lavoro

Attiva il flusso di lavoro

Testa il sistema end-to-end pubblicando un messaggio in Pub/Sub e la generazione di un evento. Per ulteriori informazioni, vedi l'attivazione di un flusso di lavoro con eventi o messaggi Pub/Sub.

  1. Pubblica un messaggio nell'argomento Pub/Sub per generare un evento:

    gcloud pubsub topics publish message-payload-topic --message="Hello World"
    

    L'evento viene instradato al flusso di lavoro che registra il messaggio di evento, salva i dati sugli eventi al bucket Cloud Storage ed esegue Job Cloud Run per elaborare i dati salvati in di archiviazione ideale in Cloud Storage. L'operazione può richiedere un minuto.

  2. Conferma che il job Cloud Run sia stato eseguito come previsto visualizzando le esecuzioni del job:

    gcloud run jobs executions list --job=message-payload-job
    

    Nell'output dovresti vedere una nuova esecuzione del job.

  3. Per visualizzare le voci di log correlate agli eventi create attivando il flusso di lavoro, esegui il seguente comando:

    gcloud logging read "resource.type=cloud_run_job AND textPayload:Payload"
    
  4. Cerca una voce di log simile alla seguente:

    textPayload: "Payload: {'message': {'data': 'SGVsbG8gV29ybGQ=', 'messageId': '8834108235224238',\
    \ 'publishTime': '2023-09-20T17:07:52.921Z'}, 'subscription': 'projects/MY_PROJECT/subscriptions/eventarc-us-central1-message-payload-trigger-sub-741'}"
    ...
    resource:
    labels:
      job_name: message-payload-job
      location: us-central1
      project_id: MY_PROJECT
    type: cloud_run_job
    textPayload: Processing message payload gs://message-payload-MY_PROJECT/8254002311197919.data.json
    
  5. Puoi verificare che i risultati siano quelli previsti visualizzando i dati sugli eventi in dell'oggetto bucket Cloud Storage.

    1. Recupera il nome del tuo bucket:

      gsutil ls

      L'output è simile al seguente:

      gs://message-payload-PROJECT_ID/

    2. Elenca gli oggetti nel tuo bucket:

      gsutil ls -r gs://message-payload-PROJECT_ID/**

      L'output dovrebbe essere simile al seguente:

      gs://message-payload-PROJECT_ID/OBJECT_ID.data.json

      Prendi nota di OBJECT_ID da utilizzare nel passaggio successivo.

    3. Scarica l'oggetto nel bucket come file:

      gcloud storage cp gs://message-payload-PROJECT_ID/OBJECT_ID.data.json message-event.txt

      Sostituisci OBJECT_ID con l'ID restituito nella passaggio precedente.

    4. In un editor di testo, apri il file message-event.txt. Il corpo dell'evento, scritto in il file sarà simile al seguente:

      {
        "message": {
          "data": "SGVsbG8gV29ybGQ=",
          "messageId": "8254002311197919",
          "publishTime": "2023-09-20T16:54:29.312Z"
        },
        "subscription": "projects/MY_PROJECT/subscriptions/eventarc-us-central1-message-payload-trigger-sub-741"
      }
      

      Tieni presente che se decodifiche il valore dei dati di SGVsbG8gV29ybGQ= dal relativo Formato Base64, "Hello World" viene restituito.

Esegui la pulizia

Se hai creato un nuovo progetto per questo tutorial, elimina il progetto. Se hai utilizzato un progetto esistente e vuoi mantenerlo senza l'aggiunta delle modifiche In questo tutorial, elimina le risorse create per il tutorial.

Elimina il progetto

Il modo più semplice per eliminare la fatturazione creato per il tutorial.

Per eliminare il progetto:

  1. Nella console Google Cloud, vai alla pagina Gestisci risorse.

    Vai a Gestisci risorse

  2. Nell'elenco dei progetti, seleziona il progetto che vuoi eliminare, quindi fai clic su Elimina.
  3. Nella finestra di dialogo, digita l'ID del progetto e fai clic su Chiudi per eliminare il progetto.

Elimina le risorse del tutorial

Elimina le risorse che hai creato in questo tutorial:

  1. Elimina l'argomento Pub/Sub.

  2. Elimina il trigger Eventarc.

  3. Elimina il flusso di lavoro di Workflows.

  4. Elimina il job Cloud Run.

  5. Elimina il bucket Cloud Storage.

Passaggi successivi