Ce document explique comment supprimer des révisions de schéma pour les sujets Pub/Sub. L'opération de suppression d'un schéma supprime également toutes les révisions qui lui sont associées.
Avant de commencer
- Comprendre le fonctionnement des schémas Pub/Sub
- Créez un schéma.
Rôles et autorisations requis
Pour obtenir les autorisations nécessaires pour supprimer et gérer les révisions de schéma, demandez à votre administrateur de vous attribuer le rôle IAM Éditeur Pub/Sub (roles/pubsub.editor
) sur votre projet.
Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.
Ce rôle prédéfini contient les autorisations requises pour supprimer et gérer les révisions de schéma. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour supprimer et gérer des révisions de schéma:
-
Créer le schéma :
pubsub.schemas.create
-
Associer le schéma au sujet :
pubsub.schemas.attach
-
Effectuez un commit d'une révision de schéma :
pubsub.schemas.commit
-
Supprimez un schéma ou une révision de schéma :
pubsub.schemas.delete
-
Obtenez un schéma ou des révisions de schéma :
pubsub.schemas.get
-
Répertorier les schémas :
pubsub.schemas.list
-
Répertorier les révisions de schéma :
pubsub.schemas.listRevisions
-
Effectuer le rollback d'un schéma :
pubsub.schemas.rollback
-
Validez un message :
pubsub.schemas.validate
-
Obtenez la stratégie IAM d'un schéma :
pubsub.schemas.getIamPolicy
-
Configurez la stratégie IAM pour un schéma :
pubsub.schemas.setIamPolicy
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Vous pouvez attribuer des rôles et des autorisations à des comptes principaux tels que des utilisateurs, des groupes, des domaines ou des comptes de service. Vous pouvez créer un schéma dans un projet et l'associer à un sujet situé dans un autre projet. Assurez-vous de disposer des autorisations requises pour chaque projet.
Supprimer une révision de schéma
Voici quelques consignes importantes pour supprimer une révision de schéma:
Vous pouvez supprimer une ou plusieurs révisions de schéma d'un schéma.
Si le schéma ne comporte qu'une seule révision, vous ne pouvez pas la supprimer. Supprimez plutôt le schéma.
L'opération de suppression d'un schéma supprime également toutes les révisions qui lui sont associées.
Si vous supprimez un schéma, la publication de messages dans les sujets associés à ce schéma échouera.
Si vous supprimez une révision de schéma et qu'elle est spécifiée comme première révision d'un sujet, la révision suivante est utilisée à la place pour la validation.
Si la révision de schéma supprimée est spécifiée comme dernière révision d'un sujet, la révision de schéma précédente est utilisée à la place pour la validation.
Si la révision de schéma supprimée se situe dans la plage de révisions spécifiée pour un sujet à valider, la révision est ignorée.
Vous pouvez supprimer une révision de schéma à l'aide de la console Google Cloud, de la gcloud CLI, de l'API Pub/Sub ou des bibliothèques clientes Cloud.
Console
Dans la console Google Cloud, accédez à la page Schémas Pub/Sub.
Cliquez sur le nom d'un schéma existant.
La page Informations sur le schéma s'ouvre.
Sélectionnez la révision que vous souhaitez supprimer. Vous pouvez également sélectionner plusieurs révisions.
Cliquez sur Supprimer la révision.
Confirmez l'opération de suppression.
gcloud
gcloud pubsub schemas delete-revision SCHEMA_NAME@REVISION_ID
Où :
- REVISION_ID est la révision vers laquelle vous souhaitez effectuer un rollback.
REST
Pour supprimer une révision de schéma, envoyez une requête DELETE semblable à celle-ci:
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
Le corps de la réponse doit contenir une représentation JSON de la ressource de schéma supprimée.
C++
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage C++ qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour C++.
Go
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Go qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Go.
Java
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Java qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Java.
Python
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Python qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Python.
Node.js
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Node.js qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Node.js.
Node.js
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Node.js qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Node.js.
Étapes suivantes
- Supprimer un schéma
- Répertorier les schémas
- Répertorier les révisions d'un schéma
- S'abonner à un sujet avec un schéma