En este documento, se muestra cómo revertir un esquema para un tema de Pub/Sub.
La operación de reversión te permite crear otra revisión del esquema con la definición del esquema exacta como la revisión anterior especificada.
Antes de comenzar
- Comprender cómo funcionan los esquemas de Pub/Sub
- Crea un esquema.
Roles y permisos requeridos
Para obtener los permisos que necesitas para revertir esquemas y administrarlos,
pídele a tu administrador que te otorgue el rol de IAM de
editor de Pub/Sub (roles/pubsub.editor
) en tu proyecto.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Este rol predefinido contiene los permisos necesarios para revertir esquemas y administrarlos. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para revertir esquemas y administrarlos:
-
Crear esquema:
pubsub.schemas.create
-
Adjunta el esquema al tema:
pubsub.schemas.attach
-
Confirma una revisión de esquema:
pubsub.schemas.commit
-
Borra un esquema o una revisión de esquema:
pubsub.schemas.delete
-
Obtén un esquema o revisiones de esquemas:
pubsub.schemas.get
-
Esquemas de lista:
pubsub.schemas.list
-
Revisiones del esquema de la lista:
pubsub.schemas.listRevisions
-
Revierte un esquema:
pubsub.schemas.rollback
-
Valida un mensaje:
pubsub.schemas.validate
-
Obtén la política de IAM de un esquema:
pubsub.schemas.getIamPolicy
-
Configura la política de IAM para un esquema:
pubsub.schemas.setIamPolicy
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Puedes otorgar roles y permisos a principales, como usuarios, grupos, dominios o cuentas de servicio. Puedes crear un esquema en un proyecto y vincularlo a un tema ubicado en un proyecto diferente. Asegúrate de tener los permisos necesarios para cada proyecto.
Cómo revertir una revisión de esquema
Puedes revertir un esquema con la consola de Google Cloud, Google Cloud CLI, la API de Pub/Sub o las bibliotecas cliente de Cloud. Lleva a cabo los pasos siguientes:
Console
En la consola de Google Cloud, ve a la página Esquemas de Pub/Sub.
Haz clic en el nombre de un esquema existente.
Se abrirá la página Detalles del esquema del esquema.
Haz clic en Revertir.
Se abrirá el diálogo Roll back schema.
Selecciona la revisión a la que quieres revertir tu esquema.
Haz clic en Confirmar para guardar la operación de reversión.
Se crea una revisión nueva con el esquema especificado en la operación de rollback.
En la página Detalles del esquema, selecciona la versión más reciente del esquema y la versión que seleccionaste como fuente para la operación de reversión.
Haz clic en Ver diferencia.
Puedes verificar que los dos esquemas sean idénticos.
Puedes usar la revisión del esquema que acabas de crear como la última revisión para validar un tema. Para ello, actualiza el campo Last revision allowed.
gcloud
gcloud pubsub schemas rollback SCHEMA_ID \ --revision-id=REVISION_ID
Aquí:
- REVISION_ID es la revisión a la que deseas revertir.
REST
Para revertir un esquema, envía una solicitud POST como la siguiente:
POST https://pubsub.googleapis.com/v1/projects/PROJECT_ID/schemas/SCHEMA_ID:rollback Authorization: Bearer $(gcloud auth application-default print-access-token) Content-Type: application/json --data @response-body.json
Especifica los siguientes campos en el cuerpo de la solicitud:
{ "revisionId": REVISION_KD }
Aquí:
- REVISION_KD es el ID de la revisión a la que se debe revertir.
El cuerpo de la respuesta debe contener una representación JSON de un recurso de esquema.
C++
Antes de probar esta muestra, sigue las instrucciones de configuración de C++ en la guía de inicio rápido sobre el uso de bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Pub/Sub para C++.
Go
Antes de probar esta muestra, sigue las instrucciones de configuración de Go en la guía de inicio rápido sobre el uso de bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Pub/Sub para Go.
Java
Antes de probar esta muestra, sigue las instrucciones de configuración de Java en la guía de inicio rápido sobre el uso de bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Pub/Sub para Java.
Python
Antes de probar esta muestra, sigue las instrucciones de configuración de Python en la guía de inicio rápido sobre el uso de bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Pub/Sub para Python.
Node.js
Antes de probar esta muestra, sigue las instrucciones de configuración de Node.js en la guía de inicio rápido sobre el uso de bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Pub/Sub para Node.js.
Node.js
Antes de probar esta muestra, sigue las instrucciones de configuración de Node.js en la guía de inicio rápido sobre el uso de bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Pub/Sub para Node.js.
¿Qué sigue?
- Cómo borrar una revisión de esquema
- Cómo borrar un esquema
- Enumera los esquemas
- Enumera las revisiones de un esquema
- Cómo suscribirse a un tema con un esquema