Memicu alur kerja dengan peristiwa atau pesan Pub/Sub

Anda dapat menggunakan pemicu Eventarc untuk menjalankan alur kerja sebagai akibat dari peristiwa atau serangkaian peristiwa. Peristiwa dirutekan dari penyedia peristiwa ke penerima peristiwa yang berminat.

Eventarc mengirimkan peristiwa ke penerima peristiwa dalam format CloudEvents melalui permintaan HTTP. Layanan Alur Kerja mengonversi peristiwa menjadi objek JSON (mengikuti spesifikasi CloudEvents) dan meneruskan peristiwa ke eksekusi alur kerja sebagai argumen runtime alur kerja.

Eksekusi alur kerja Anda dipicu:

  • Saat log audit dibuat yang cocok dengan kriteria filter pemicu. Misalnya, lihat panduan memulai ini tempat Anda memicu Alur Kerja dengan peristiwa dari BigQuery menggunakan Cloud Audit Logs.
  • Sebagai respons terhadap peristiwa langsung seperti update pada bucket Cloud Storage atau update pada template Firebase Remote Config. Misalnya, lihat panduan memulai ini tempat Anda memicu Workflow dengan peristiwa langsung dari Cloud Storage.
  • Dengan pesan yang dipublikasikan ke topik Pub/Sub. Misalnya, lihat quickstart ini yang memicu Alur Kerja dengan pesan Pub/Sub.

Perhatikan hal-hal berikut:

  • Peristiwa dianggap dikirim segera setelah eksekusi alur kerja dimulai, dan eksekusi yang sebenarnya terjadi secara asinkron di layanan Alur Kerja.

  • Eksekusi yang dipicu oleh peristiwa tidak dicoba lagi jika eksekusi alur kerja dimulai, tetapi kemudian gagal. Untuk mengetahui informasi selengkapnya, lihat Kebijakan percobaan ulang peristiwa.

  • Periode penghapusan duplikat Alur Kerja untuk memastikan pemrosesan peristiwa tepat sekali adalah 24 jam.

  • Saat menggunakan Alur Kerja sebagai tujuan untuk pemicu Eventarc, peristiwa yang lebih besar dari ukuran argumen Alur Kerja maksimum akan gagal memicu eksekusi alur kerja. Untuk mengetahui informasi selengkapnya, lihat Kuota dan batas.

  • Dalam project yang dilindungi oleh perimeter layanan, saat merutekan peristiwa ke tujuan Alur Kerja yang endpoint push Pub/Sub-nya ditetapkan ke eksekusi Alur Kerja, Anda hanya dapat membuat langganan push Pub/Sub baru melalui Eventarc. Perhatikan bahwa akun layanan yang digunakan untuk autentikasi push untuk endpoint Workflows harus disertakan dalam perimeter layanan. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan perimeter layanan menggunakan Kontrol Layanan VPC.

Membuat pemicu menggunakan Google Cloud CLI

Anda dapat membuat pemicu dengan menjalankan perintah gcloud eventarc triggers create bersama dengan flag yang diperlukan dan opsional.

Untuk informasi selengkapnya, lihat petunjuk gcloud di bagian "Buat pemicu" saat membuat pemicu untuk penyedia, jenis peristiwa, dan tujuan Alur Kerja tertentu.

Membuat pemicu menggunakan konsol

Langkah-langkah berikut menunjukkan cara membuat pemicu di halaman Alur Kerja di konsol Google Cloud.

Sebelum memulai

  1. Enable the Eventarc and Pub/Sub APIs.

    Enable the APIs

  2. Buat akun layanan agar Eventarc dapat membuat permintaan ke Workflows API:

    1. Di konsol Google Cloud, buka halaman Akun Layanan.

      Buka Akun Layanan

    2. Pilih project, lalu klik Buat akun layanan.

    3. Di kolom Service account name, masukkan nama yang panjangnya antara 6 dan 30 karakter.

      Nama dapat berisi karakter alfanumerik huruf kecil dan tanda hubung. Setelah membuat akun layanan, Anda tidak dapat mengubah namanya.

    4. Klik Buat dan lanjutkan.

    5. Berikan peran workflows.invoker kepada akun layanan baru Anda sehingga akun tersebut memiliki izin untuk memicu alur kerja Anda. Dalam daftar Select a role, pilih Workflows > Workflows Invoker.

      Jika Anda mengembangkan aplikasi produksi, selalu berikan peran yang paling tidak permisif. Untuk mengetahui informasi selengkapnya, lihat Mengelola akses ke project, folder, dan organisasi.

    6. Klik Done.

  3. Agar akun utama yang akan menjalankan perintah Eventarc Anda dapat bertindak sebagai akun layanan Identity and Access Management (IAM), berikan peran yang memungkinkan akun utama meniru identitas akun layanan.

Mengonfigurasi pemicu

  1. Jika Anda belum memiliki alur kerja yang ingin dipicu, buat dan deploy alur kerja.

  2. Di konsol Google Cloud, buka halaman Workflows:

    Buka Workflows

  3. Di halaman Alur Kerja, pilih alur kerja untuk membuka halaman detailnya.

  4. Di halaman Detail Alur Kerja, klik Edit.

  5. Di halaman Edit alur kerja, pilih Tambahkan pemicu baru > Eventarc.

    Panel Pemicu Eventarc akan terbuka.

  6. Ikuti petunjuk untuk membuat pemicu bagi penyedia, jenis peristiwa, dan Workflows tujuan tertentu, dan lihat petunjuk Konsol di bagian "Membuat pemicu".

  7. Pilih Service account yang memanggil alur kerja Anda.

    Ini menentukan akun layanan IAM yang sebelumnya Anda beri peran workflows.invoker sehingga akun tersebut memiliki izin untuk memicu alur kerja Anda.

  8. Klik Save trigger.

    Pemicu Eventarc tercantum di tab Triggers di halaman Workflows Details.

  9. Jika ingin memperbarui atau menghapus pemicu, Anda harus mengedit alur kerja:

    1. Di halaman Detail Alur Kerja, klik Edit.
    2. Di bagian Pemicu, cari pemicu yang ingin diperbarui atau dihapus.
    3. Klik Edit resource atau Hapus resource.

Eksekusi alur kerja Anda kini dipicu oleh peristiwa yang cocok dengan kriteria filter pemicu.

Membuat pemicu menggunakan Terraform

Anda dapat membuat pemicu untuk alur kerja menggunakan Terraform. Untuk mengetahui detailnya, lihat Memicu alur kerja menggunakan Eventarc dan Terraform.

Langkah selanjutnya