Dokumen ini menunjukkan cara menghapus revisi skema untuk topik Pub/Sub. Operasi penghapusan untuk skema juga menghapus semua revisi yang terkait dengan skema tersebut.
Sebelum memulai
- Memahami cara kerja skema Pub/Sub.
- Membuat skema.
Peran dan izin yang diperlukan
Untuk mendapatkan izin yang diperlukan guna menghapus dan mengelola revisi skema, minta administrator untuk memberi Anda peran IAM Editor Pub/Sub (roles/pubsub.editor) di project Anda.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin yang diperlukan untuk menghapus dan mengelola revisi skema. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk menghapus dan mengelola revisi skema:
-
Membuat skema:
pubsub.schemas.create -
Melampirkan skema ke topik:
pubsub.schemas.attach -
Meng-commit revisi skema:
pubsub.schemas.commit -
Menghapus skema atau revisi skema:
pubsub.schemas.delete -
Mendapatkan skema atau revisi skema:
pubsub.schemas.get -
Mencantumkan skema:
pubsub.schemas.list -
Mencantumkan revisi skema:
pubsub.schemas.listRevisions -
Melakukan roll back skema:
pubsub.schemas.rollback -
Memvalidasi pesan:
pubsub.schemas.validate -
Mendapatkan kebijakan IAM untuk skema:
pubsub.schemas.getIamPolicy -
Mengonfigurasi kebijakan IAM untuk skema:
pubsub.schemas.setIamPolicy
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Anda dapat memberikan peran dan izin kepada principal seperti pengguna, grup, domain, atau akun layanan. Anda dapat membuat skema dalam satu project dan melampirkannya ke topik yang berada di project lain. Pastikan Anda memiliki izin yang diperlukan untuk setiap project.
Menghapus revisi skema
Berikut beberapa panduan penting untuk menghapus revisi skema:
Anda dapat menghapus satu atau beberapa revisi skema dari skema.
Jika skema hanya memiliki satu revisi, Anda tidak dapat menghapus revisi tersebut. Sebagai gantinya, hapus skema.
Operasi penghapusan untuk skema juga menghapus semua revisi yang terkait dengan skema tersebut.
Jika Anda menghapus skema, publikasi pesan ke topik yang terkait dengan skema tersebut akan gagal.
Jika Anda menghapus revisi skema, dan revisi tersebut ditentukan sebagai revisi pertama untuk topik, revisi berikutnya akan digunakan sebagai gantinya untuk validasi.
Jika revisi skema yang dihapus ditentukan sebagai revisi terakhir untuk topik, revisi skema sebelumnya akan digunakan sebagai gantinya untuk validasi.
Jika revisi skema yang dihapus berada dalam rentang revisi yang ditentukan untuk topik untuk validasi, revisi tersebut akan dilewati.
Anda dapat menghapus revisi skema menggunakan Google Cloud konsol, gcloud CLI, Pub/Sub API, atau Library Klien Cloud.
Konsol
Di Google Cloud konsol, buka halaman Pub/Sub schemas.
Klik nama skema yang ada.
Halaman Schema details untuk skema akan terbuka.
Pilih revisi yang ingin Anda hapus. Anda juga dapat memilih beberapa revisi.
Klik Delete revision.
Konfirmasi operasi penghapusan.
gcloud
gcloud pubsub schemas delete-revision SCHEMA_NAME@REVISION_ID
Dengan:
- REVISION_ID adalah revisi yang ingin Anda roll back.
REST
Untuk menghapus revisi skema, kirim permintaan DELETE seperti berikut:
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
Isi respons harus berisi representasi JSON dari resource skema yang dihapus .
C++
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan C++ di Panduan memulai: Menggunakan Library Klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Pub/Sub C++.
Go
Contoh berikut menggunakan versi utama library klien Pub/Sub Go (v2). Jika Anda masih menggunakan library v1, lihat panduan migrasi ke v2. Untuk melihat daftar contoh kode v1, lihat contoh kode yang tidak digunakan lagi.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Go di Panduan memulai: Menggunakan Library Klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Go API Pub/Sub.
Java
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di Panduan memulai: Menggunakan Library Klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Java Pub/Sub.
Python
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di Panduan memulai: Menggunakan Library Klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Python API Pub/Sub.
Node.js
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di Panduan memulai: Menggunakan Library Klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Pub/Sub Node.js.
Node.js
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di Panduan memulai: Menggunakan Library Klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Pub/Sub Node.js.