Cloud Build memungkinkan Anda mengonfigurasi pemicu yang tidak langsung mengeksekusi build, tetapi menandai build sebagai tertunda hingga disetujui. Jika pengguna dengan izin menyetujui build yang tertunda, build akan dimulai. Jika persetujuan ditolak, build tidak akan dimulai.
Halaman ini menjelaskan cara menyetujui atau menolak build secara manual. Untuk mempelajari cara mengonfigurasi pemicu yang memerlukan persetujuan, lihat Membuat pemicu build.
Sebelum memulai
Aktifkan Cloud Build API.
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan peran IAM Service Usage Admin (
roles/serviceusage.serviceUsageAdmin), yang berisi izinserviceusage.services.enable. Pelajari cara memberikan peran.
Instal Google Cloud CLI.
Jika belum, buat pemicu build yang dikonfigurasi untuk memerlukan persetujuan.
Memberikan izin
Jika pengguna memiliki peran Editor Cloud Build, pengguna tersebut memiliki izin untuk mengupdate pemicu agar memerlukan atau tidak memerlukan persetujuan. Untuk mempelajari izin Cloud Build lebih lanjut, lihat IAM dan izin. Agar dapat memberikan izin kepada pengguna untuk menyetujui build dalam project Anda, pengguna harus memiliki peran Cloud Build Approver.
Untuk menambahkan peran Cloud Build Approver:
Buka halaman IAM di Google Cloud konsol.
Klik Grant access.
Anda akan melihat panel Grant access.
Di bagian Add principals, tambahkan pengguna untuk memberi mereka izin memberikan persetujuan untuk build yang tertunda dalam project Anda.
Anda harus menambahkan satu atau beberapa akun utama di bagian ini. Jika Anda menambahkan diri Anda sebagai akun utama, perhatikan bahwa Anda tetap harus menyetujui build yang tertunda secara manual jika pemicu Anda dibatasi oleh persetujuan.
Di bagian Assign roles, pilih Cloud Build > Cloud Build Approver.
Pengguna yang Anda tentukan kini memiliki akses untuk menyetujui atau menolak build yang tertunda.
Menyetujui build
Konsol
Untuk menyetujui build yang tertunda di Google Cloud konsol:
Buka halaman Cloud Build Dashboard di Google Cloud konsol.
Jika Anda memiliki build yang akan disetujui, Anda akan melihat pesan di bagian atas halaman dengan jumlah build yang menunggu persetujuan Anda. Di sebelah kanan pesan, klik View Builds untuk melihat daftar build yang menunggu persetujuan Anda.
Klik kotak centang build yang ingin Anda setujui. Anda dapat memilih beberapa build untuk disetujui atau satu build untuk disetujui.
Di bagian atas halaman, klik Approve untuk menyetujui build yang dipilih.
Sebelum build dimulai, Anda akan melihat kotak dialog Approve build. Di kotak dialog, Anda dapat menambahkan pesan opsional dan URL yang akan ditampilkan bersama dengan persetujuan build. Untuk menyertakan URL, klik Show additional options untuk memasukkan URL.
Di kotak dialog, klik Approve untuk menyetujui build.
Setelah Anda menyetujui, build akan segera dimulai. Jika kebijakan organisasi (constraints/cloudbuild.allowedIntegrations) menolak akses ke repositori yang terhubung, kebijakan tersebut akan mengganti persetujuan. Untuk mempelajari lebih lanjut, lihat Membatasi build pada kebijakan organisasi.
gcloud
Untuk menyetujui build yang tertunda menggunakan gcloud commands, jalankan perintah berikut di jendela terminal Anda:
gcloud builds approve BUILD_ID \
--project=PROJECT_ID \
--url=URL \
--comment=COMMENT
Ganti nilai placeholder dalam perintah di atas dengan nilai berikut:
BUILD_IDadalah ID build yang ingin Anda setujui.PROJECT_IDadalah project ID Anda.- [Opsional]
URLadalah URL yang berisi informasi tentang persetujuan, seperti link ke tiket JIRA. - [Opsional]
COMMENTadalah pesan yang ingin Anda tampilkan setelah persetujuan build.
Setelah Anda menyetujui, build akan segera dimulai. Jika kebijakan organisasi untuk menentukan build untuk integrasi yang diizinkan (constraints/cloudbuild.allowedIntegrations) ditetapkan, kebijakan tersebut akan mengganti persetujuan. Untuk mempelajari lebih lanjut, lihat Menerapkan kebijakan organisasi
ke pemicu build.
Menolak build
Konsol
Untuk menolak build yang tertunda di Google Cloud konsol:
Buka halaman Cloud Build Dashboard di Google Cloud konsol.
Jika Anda memiliki build yang akan disetujui, Anda akan melihat pesan di bagian atas halaman dengan jumlah build yang menunggu persetujuan Anda. Di sebelah kanan pesan, klik View Builds untuk melihat daftar build yang menunggu persetujuan Anda.
Anda dapat memilih beberapa build untuk ditolak atau satu build untuk ditolak. Klik kotak centang build yang ingin Anda tolak.
Klik Reject di bagian atas halaman untuk menolak build.
Jika Anda menolak build, build tidak akan dimulai.
gcloud
Untuk menolak build yang tertunda menggunakan gcloud commands, jalankan perintah berikut di jendela terminal Anda:
gcloud builds reject BUILD_ID \
--project=PROJECT_ID \
--url=URL \
--comment=COMMENT
Ganti nilai placeholder dalam perintah di atas dengan nilai berikut:
BUILD_IDadalah ID build yang ingin Anda tolak.PROJECT_IDadalah project ID Anda.- [Opsional]
URLadalah URL yang berisi informasi tentang penolakan, seperti link ke tiket JIRA. - [Opsional]
COMMENTadalah pesan yang ingin Anda tampilkan setelah penolakan build.
Jika Anda menolak build, build tidak akan pernah dimulai.
Menerima notifikasi untuk build yang menunggu persetujuan
Anda dapat menggunakan pemberi notifikasi Cloud Build untuk menerima notifikasi tentang build yang tertunda menggunakan pemberi notifikasi yang dikelola Cloud Build, seperti Slack atau SMTP server, atau dengan membuat pemberi notifikasi Anda sendiri.
Untuk mengonfigurasi notifikasi:
Ikuti petunjuk di salah satu halaman berikut untuk mengonfigurasi notifikasi untuk layanan yang Anda inginkan:
Saat mengonfigurasi notifikasi menggunakan salah satu halaman di atas, Anda harus mengonfigurasi pemberi notifikasi untuk memfilter build dengan status PENDING. Tindakan ini akan mengirimkan notifikasi kepada Anda tentang build yang menunggu persetujuan. Dalam contoh file konfigurasi pemberi notifikasi SMTP berikut, kolom filter menggunakan Common Expression Language (CEL) untuk memfilter peristiwa build dengan status PENDING:
apiVersion: cloud-build-notifiers/v1 kind: SMTPNotifier metadata: name: example-smtp-notifier spec: notification: filter: build.status == Build.Status.PENDING delivery: server: example.gmail.com port: 0000 sender: sender@example.com ...Untuk melihat contoh lengkapnya, lihat file konfigurasi pemberi notifikasi untuk pemberi notifikasi SMTP.
Untuk men-deploy pemberi notifikasi, jalankan perintah
gcloud rundi terminal Anda. Contoh berikut men-deploy pemberi notifikasi SMTP menggunakan Cloud Run.gcloud run deploy example.gmail.com \ --image=us-east1-docker.pkg.dev/gcb-release/cloud-build-notifiers/smtp:latest \ --update-env-vars=CONFIG_PATH=smtp.yaml, PROJECT_ID=my-project
Anda kini akan menerima notifikasi untuk build yang tertunda ke layanan Anda.
Langkah berikutnya
- Pelajari cara membuat dan mengelola pemicu build.
- Pelajari cara melihat hasil build untuk pemicu build