Notifikasi Cloud Build adalah image Docker yang dapat dijalankan sebagai container di Cloud Run. Saat disurvei oleh aplikasi pelanggan, pemberitahuan Cloud Build menggunakan langganan push untuk mengirimkan pesan ke layanan yang dikonfigurasi, seperti Slack atau server SMTP.
Halaman ini memberikan ringkasan tentang notifikasi Cloud Build.
Pemberi notifikasi Cloud Build
Cloud Build mengirimkan semua pembaruan peristiwa build, beserta metadata build,
ke Pub/Sub di
topik cloud-builds
atau topik yang ditentukan pengguna. Notifikasi Cloud Build dapat dikonfigurasi untuk memproses topik tersebut, memfilter pesan yang diterima, dan mengirim pesan ke layanan Anda melalui Cloud Run.
Semua notifikasi menggunakan spesifikasi YAML umum untuk konfigurasi, yang disimpan di Cloud Storage. Jika layanan yang Anda pilih memerlukan autentikasi, kredensialnya akan disimpan di Secret Manager. Cloud Run merutekan pesan dan mengirim notifikasi ke layanan Anda.
Diagram berikut menunjukkan cara Cloud Build berinteraksi dengan produk Google Cloud lain, seperti Pub/Sub dan Cloud Run, untuk mengirim notifikasi:
Topik Pub/Sub untuk notifikasi build
Secara default, Cloud Build mengirimkan notifikasi build ke topik Pub/Sub bernama cloud-builds
jika ada. Anda juga dapat
membuat topik Pub/Sub kustom untuk
menerima notifikasi build. Dalam file konfigurasi build, kolom
options.pubsubTopic
menentukan nama topik yang menjadi tujuan pengiriman notifikasi oleh Cloud Build:
Jika
options.pubsubTopic
dibiarkan kosong, Cloud Build akan menggunakan nilai defaultcloud-builds
sebagai nama topik untuk build dari file tersebut. Akibatnya, jika Anda membuat topikcloud-builds
dan membiarkanoptions.pubsubTopic
tidak ditentukan di semua file konfigurasi build, topik tersebut akan menerima semua notifikasi build Anda.Jika Anda menentukan nama topik kustom di
options.pubsubTopic
, Cloud Build akan mengirimkan notifikasi untuk file konfigurasi build tersebut ke topik tersebut. Nama topik kustom berguna jika Anda tidak ingin semua notifikasi build dipublikasikan ke topik yang sama.Saat menggunakan nama topik kustom dalam file konfigurasi build, Anda juga harus menetapkan peran
roles/pubsub.publisher
ke akun layanan selain akun layanan Cloud Build default.
Memublikasikan notifikasi build ke topik Pub/Sub di seluruh project
Untuk memublikasikan notifikasi build ke topik Pub/Sub dalam project yang berbeda dengan tempat build dijalankan, berikan peran roles/pubsub.publisher
ke akun layanan di project target.
Misalnya, Anda memiliki Project A dan Project B. Anda menjalankan build di Project A menggunakan Akun Layanan A, dan ingin memublikasikan notifikasi build ke topik Pub/Sub di Project B. Untuk melakukannya,
Anda dapat memberikan peran roles/pubsub.publisher
kepada Akun Layanan A di
Project B dengan menjalankan perintah berikut:
gcloud projects add-iam-policy-binding ProjectB --member 'serviceAccount:ServiceAccountA' --role 'roles/pubsub.publisher'
Kemudian, Anda dapat menggunakan konfigurasi build seperti berikut, yang memungkinkan Anda menjalankan build di Project A dan memublikasikan notifikasi build ke Project B:
steps:
- name: ubuntu
args:
- pwd
serviceAccount: projects/ProjectA/serviceAccounts/ServiceAccountA
options:
pubsubTopic: projects/ProjectB/topics/CustomTopic
logging: desired-logging-option
Pemberi notifikasi yang didukung dan disediakan oleh Cloud Build
Cloud Build menyediakan dan mengelola image notifikasi yang dapat di-deploy di repositori cloud-build-notifiers
. Tabel berikut mencantumkan pemberitahuan
yang tersedia:
Notifier | Deskripsi |
---|---|
bigquery |
menulis data build ke tabel BigQuery |
githubissues |
menggunakan webhook GitHub untuk membuat masalah pada repositori GitHub |
googlechat |
menggunakan webhook Google Chat untuk memposting pesan ke ruang Google Chat |
http |
mengirim payload JSON ke endpoint HTTP lain |
slack |
menggunakan webhook Slack untuk memposting pesan ke saluran Slack |
smtp |
mengirim email melalui server SMTP |
Untuk mempelajari lebih lanjut cara mengonfigurasi setiap notifikasi, lihat halaman yang sesuai untuk setiap layanan:
- Mengonfigurasi notifikasi BigQuery
- Mengonfigurasi notifikasi Masalah GitHub
- Mengonfigurasi notifikasi Google Chat
- Mengonfigurasi notifikasi HTTP
- Mengonfigurasi notifikasi Slack
- Mengonfigurasi notifikasi SMTP
Mengotomatiskan konfigurasi notifikasi
Cloud Build menyediakan skrip penyiapan yang dapat Anda gunakan untuk mengotomatiskan konfigurasi notifikasi untuk notifikasi yang didukung Cloud Build.
Untuk mempelajari cara mengonfigurasi notifikasi untuk notifikasi yang didukung Cloud Build, lihat Mengotomatiskan konfigurasi untuk notifikasi.
Membuat pemberi notifikasi sendiri
Selain notifikasi yang dikelola oleh Cloud Build, seperti Slack atau SMTP, Anda dapat menggunakan library yang disediakan di repositori cloud-build-notifiers
untuk membuat notifikasi Anda sendiri.
Untuk mempelajari cara membuat notifikasi Anda sendiri, lihat Membuat notifikasi Anda sendiri.
Langkah berikutnya
- Pelajari cara mengonfigurasi notifikasi BigQuery, GitHub Issue, Google Chat, HTTP, Slack, atau SMTP.
- Pelajari cara mengotomatiskan konfigurasi untuk notifikasi.
- Pelajari cara membuat notifikasi Anda sendiri.