

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Memecahkan masalah webhook
<a name="action-runner-troubleshoot-webhook"></a>

**Masalah:** Webhook yang Anda atur [Tutorial: Konfigurasikan CodeBuild pelari GitHub Tindakan yang di-host](action-runner.md) tidak berfungsi atau pekerjaan alur kerja Anda terus berlanjut. GitHub

**Kemungkinan penyebabnya:**
+ Acara **lowongan kerja alur kerja** webhook Anda mungkin gagal memicu build. Tinjau log **Respons** untuk melihat respons atau pesan kesalahan.
+ Pekerjaan Anda ditugaskan ke agen pelari yang salah karena konfigurasi labelnya. Masalah ini dapat terjadi ketika salah satu pekerjaan Anda dalam satu alur kerja memiliki label yang lebih sedikit daripada pekerjaan lain. Misalnya, jika Anda memiliki dua pekerjaan dengan label berikut dalam alur kerja yang sama, jalankan:
  + **Job 1**: `codebuild-myProject-${{ github.run_id }}-${{ github.run_attempt }}`
  + **Job 2**:`codebuild-myProject-${{ github.run_id }}-${{ github.run_attempt }}`, `instance-size:medium`

  Saat merutekan pekerjaan GitHub Tindakan yang dihosting sendiri, GitHub akan merutekan pekerjaan ke pelari mana pun dengan semua label yang ditentukan pekerjaan. Perilaku ini berarti bahwa **Job 1** dapat diambil oleh pelari yang dibuat untuk **Job 1** atau **Job 2**, tetapi **Job 2** hanya dapat diambil oleh pelari yang dibuat untuk **Job 2** karena memiliki label tambahan. Jika **Job 1** diambil oleh pelari yang dibuat untuk **Job 2**, maka **Job 2** akan macet karena pelari **Job 1** tidak memiliki label. `instance-size:medium`

**Solusi yang direkomendasikan:**

Saat membuat beberapa pekerjaan dalam alur kerja yang sama, gunakan jumlah penggantian label yang sama untuk setiap pekerjaan atau tetapkan setiap lowongan label khusus, seperti atau. `job1` `job2`

Jika kesalahan berlanjut, gunakan instruksi berikut untuk men-debug masalah.

1. Buka GitHub konsol di `https://github.com/user-name/repository-name/settings/hooks` untuk melihat pengaturan webhook repositori Anda. Di halaman ini, Anda akan melihat webhook yang dibuat untuk repositori Anda.

1. Pilih **Edit** dan konfirmasikan bahwa webhook diaktifkan untuk mengirimkan peristiwa **pekerjaan Workflow**.  
![\[Acara pekerjaan alur kerja diaktifkan di webhook Anda.\]](http://docs.aws.amazon.com/id_id/codebuild/latest/userguide/images/github-actions-workflow-jobs.png)

1.  Arahkan ke tab **Pengiriman Terbaru**, temukan `workflow_job.queued` acara yang sesuai, dan perluas acara. 

1.  Tinjau bidang **label** di **Payload** dan pastikan itu seperti yang diharapkan. 

1.  Terakhir, tinjau tab **Respons**, karena ini berisi respons atau pesan kesalahan yang dikembalikan CodeBuild.   
![\[Respons atau pesan kesalahan dikembalikan dari CodeBuild.\]](http://docs.aws.amazon.com/id_id/codebuild/latest/userguide/images/github-actions-workflow-jobs-response.png)

1.  Atau, Anda dapat men-debug kegagalan webhook menggunakan GitHub's. APIs Anda dapat melihat pengiriman terbaru untuk webhook menggunakan [pengiriman Daftar untuk API webhook repositori](https://docs.github.com/en/rest/repos/webhooks?apiVersion=2022-11-28#list-deliveries-for-a-repository-webhook): 

   ```
   gh api \
     -H "Accept: application/vnd.github+json" \
     -H "X-GitHub-Api-Version: 2022-11-28" \
     /repos/owner/repo/hooks/hook-id/deliveries
   ```

    Setelah menemukan pengiriman webhook yang ingin Anda debug dan mencatat ID pengiriman, Anda dapat menggunakan [Get a delivery for a repository](https://docs.github.com/en/rest/repos/webhooks?apiVersion=2022-11-28#get-a-delivery-for-a-repository-webhook) webhook API. CodeBuildTanggapan terhadap muatan pengiriman webhook dapat ditemukan di bagian`response`: 

   ```
   gh api \
     -H "Accept: application/vnd.github+json" \
     -H "X-GitHub-Api-Version: 2022-11-28" \
     /repos/owner/repo/hooks/hook-id/deliveries/delivery-id
   ```

**Masalah:** GitHub Tindakan Anda dengan aturan [perlindungan penerapan](https://docs.github.com/en/actions/managing-workflow-runs-and-deployments/managing-deployments/reviewing-deployments) mengaktifkan pemicu build di dalamnya CodeBuild sebelum penerapan disetujui.

**Kemungkinan penyebabnya:** CodeBuild mengambil penerapan dan lingkungan yang terkait dengan pekerjaan GitHub Tindakan jika ada untuk memverifikasi apakah disetujui. Jika CodeBuild gagal mengambil penerapan atau lingkungan, CodeBuild build dapat dipicu sebelum waktunya.

**Solusi yang disarankan:** Verifikasi bahwa kredensil yang terkait dengan CodeBuild proyek Anda telah membaca izin untuk penerapan dan tindakan di dalamnya. GitHub