Menyiapkan webhook untuk repositori GitHub

Selesai

Di GitHub, webhook dapat diatur untuk organisasi atau repositori tertentu. Webhook dipicu setiap satu atau beberapa peristiwa langganan terjadi. Misalnya, peristiwa Gollum memungkinkan Anda mendengarkan pembaruan wiki, khususnya, pembuatan dan pembaruan untuk halaman wiki.

Di unit ini, Anda akan mempelajari cara menyiapkan webhook yang mendengarkan peristiwa perubahan dari wiki GitHub perusahaan Anda.

Menyiapkan webhook

Menyiapkan webhook adalah proses dua langkah. Pertama, Anda menentukan di GitHub bagaimana Anda ingin webhook Anda berulah dan peristiwa mana yang akan didengarkannya. Kedua, Anda menyiapkan fungsi di Azure Functions untuk menerima dan mengelola payload yang diterima dari webhook. Dalam skenario contoh, kami menyiapkan webhook untuk repositori tertentu.

Untuk menyiapkan webhook, di portal GitHub, pilih Aturan dari bilah menu atas. Halaman Pengaturan muncul, dengan nama repositori Anda. Di menu sebelah kiri, pilih Webhook, lalu pilih Tambahkan webhook. Anda juga dapat membuat dan mengelola webhook melalui API Webhook, yang tidak tercakup dalam modul ini.

Webhook memerlukan beberapa opsi konfigurasi sebelum Anda dapat menggunakannya. Kita akan membahas masing-masing pengaturan ini nanti.

URL Payload

URL Payload adalah URL server yang akan menerima permintaan POST webhook.

Setiap jenis peristiwa memiliki format payload tertentu. Payload tersebut berisi informasi tentang peristiwa yang memicu webhook.

Jenis konten

Webhook dapat dikirimkan menggunakan dua jenis konten yang berbeda:

  • Jenis konten aplikasi/json mengirimkan payload JSON secara langsung sebagai isi permintaan POST.
  • Jenis konten application/x-www-form-urlencoded mengirimkan payload JSON sebagai parameter formulir, bernama payload.

Catatan

Halaman Tambahkan webhook juga memungkinkan Anda untuk menentukan cara melindungi informasi yang dikirim oleh webhook dengan menggunakan Rahasia. Topik ini dibahas kemudian dalam modul ini.

Aktivitas

Peristiwa berada di pusat webhooks. Peristiwa terjadi setiap kali tindakan diambil di repositori. Saat peristiwa terjadi, webhook mengaktifkan dan memanggil URL yang Anda tentukan, mengirimkan bersama muatan dan informasi peristiwa ke URL Anda. Misalnya, untuk merespons setiap kali masalah muncul di repositori, pilih Biarkan saya memilih peristiwa individual, lalu centang kotak Masalah. Pastikan Anda mencentang kotak Aktif untuk menerima peristiwa masalah untuk webhook yang dipicu. Kemudian pilih Tambahkan webhook untuk mengaktifkan pemicu.

Untuk mendengarkan pembaruan wiki untuk repositori, pilih kotak centang Wiki; ini adalah peristiwa Gollum yang disebutkan sebelumnya. Pilih Tambahkan webhook untuk menyimpan semua peristiwa individual yang Anda pilih.

Daftar lengkap peristiwa webhook, dan kapan peristiwa tersebut dapat dijalankan, dapat ditemukan dengan mengunjungi Peristiwa Webhook GitHub.

Dalam latihan berikutnya, kami akan memandu Anda melalui proses penyiapan webhook untuk repositori GitHub.