Questo documento spiega come eliminare le revisioni dello schema per gli argomenti Pub/Sub. L'operazione di eliminazione di uno schema elimina anche tutte le revisioni associate allo schema.
Prima di iniziare
- Scopri come funzionano gli schemi Pub/Sub.
- Crea uno schema.
Ruoli e autorizzazioni richiesti
Per ottenere le autorizzazioni necessarie per eliminare e gestire le revisioni dello schema,
chiedi all'amministratore di concederti il ruolo IAM Editor Pub/Sub (roles/pubsub.editor
) nel progetto.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Questo ruolo predefinito contiene le autorizzazioni necessarie per eliminare e gestire le revisioni dello schema. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
Per eliminare e gestire le revisioni dello schema sono necessarie le seguenti autorizzazioni:
-
Crea schema:
pubsub.schemas.create
-
Allega lo schema all'argomento:
pubsub.schemas.attach
-
Esegui il commit di una revisione dello schema:
pubsub.schemas.commit
-
Elimina uno schema o una revisione dello schema:
pubsub.schemas.delete
-
Ottieni uno schema o le revisioni dello schema:
pubsub.schemas.get
-
Elenca schemi:
pubsub.schemas.list
-
Revisioni dello schema dell'elenco:
pubsub.schemas.listRevisions
-
Esegui il rollback di uno schema:
pubsub.schemas.rollback
-
Convalida un messaggio:
pubsub.schemas.validate
-
Recupera il criterio IAM per uno schema:
pubsub.schemas.getIamPolicy
-
Configura il criterio IAM per uno schema:
pubsub.schemas.setIamPolicy
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Puoi concedere ruoli e autorizzazioni a entità come utenti, gruppi, domini o account di servizio. Puoi creare uno schema in un progetto e agganciarlo a un argomento in un altro progetto. Assicurati di disporre delle autorizzazioni necessarie per ogni progetto.
Eliminare una revisione dello schema
Di seguito sono riportate alcune importanti linee guida per l'eliminazione di una revisione dello schema:
Puoi eliminare una o più revisioni dello schema da uno schema.
Se lo schema ha una sola revisione, non puoi eliminarla. Elimina invece lo schema.
L'operazione di eliminazione di uno schema elimina anche tutte le revisioni associate allo schema.
Se elimini uno schema, la pubblicazione dei messaggi negli argomenti associati a quel determinato schema non va a buon fine.
Se elimini una revisione dello schema e questa è specificata come prima revisione per un argomento, per la convalida viene utilizzata la revisione successiva.
Se la revisione dello schema eliminata è specificata come ultima revisione per un argomento, per la convalida viene utilizzata la revisione dello schema precedente.
Se la revisione dello schema eliminata rientra nell'intervallo di revisioni specificato per un argomento da convalidare, la revisione viene ignorata.
Puoi eliminare una revisione dello schema utilizzando la console Google Cloud, l'gcloud CLI, l'API Pub/Sub o le librerie client di Cloud.
Console
Nella console Google Cloud, vai alla pagina Schemi Pub/Sub.
Fai clic sul nome di uno schema esistente.
Viene visualizzata la pagina Dettagli schema dello schema.
Seleziona la revisione da eliminare. Puoi anche selezionare più revisioni.
Fai clic su Elimina revisione.
Conferma l'operazione di eliminazione.
gcloud
gcloud pubsub schemas delete-revision SCHEMA_NAME@REVISION_ID
Dove:
- REVISION_ID è la revisione a cui vuoi eseguire il rollback.
REST
Per eliminare una revisione dello schema, invia una richiesta DELETE come la seguente:
POST https://pubsub.googleapis.com/v1/projects/PROJECT_ID/schemas/SCHEMA_ID@REVISION_ID:deleteRevision Authorization: Bearer $(gcloud auth application-default print-access-token) Content-Type: application/json --data @response-body.json
Il corpo della risposta deve contenere una rappresentazione JSON della risorsa schema eliminata.
C++
Prima di provare questo esempio, segui le istruzioni di configurazione C++ riportate nella guida rapida all'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub C++.
Vai
Prima di provare questo esempio, segui le istruzioni di configurazione di Go riportate nella guida rapida all'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub Go.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java riportate nella Guida rapida all'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java Pub/Sub.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python riportate nella guida rapida all'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub per Python.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js riportate nella Guida rapida all'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub Node.js.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js riportate nella Guida rapida all'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub Node.js.
Passaggi successivi
- Eliminare uno schema
- Schemi di elenco
- Elenca le revisioni di uno schema
- Abbonarsi a un argomento con uno schema