MMyPlanDokumentasi
Integrasi

GitHub dan GitLab

Tautkan commit, pull request, dan merge request ke tugas secara otomatis dengan menyebut ID tugas seperti WEB-12.

Integrasi GitHub & GitLab menghubungkan repositori ke sebuah proyek lewat webhook. Setiap commit, pull request (GitHub), atau merge request (GitLab) yang menyebut ID tugas, misalnya WEB-12, otomatis ditautkan ke tugas itu sebagai komentar. Tim bisa melihat progres kode langsung dari tugas tanpa membuka repositori.

Tersedia di paket Team ke atas.

Cara kerjanya

  • MyPlan membuat satu endpoint webhook per proyek, berisi URL payload dan Secret.
  • Anda menambahkan endpoint itu ke repositori GitHub atau proyek GitLab.
  • Saat ada push atau perubahan pull/merge request, MyPlan mencari rujukan KODE-nomor milik proyek ini (tidak peka huruf besar-kecil, harus kata utuh).
  • Untuk commit, yang dibaca adalah pesan commit. Untuk pull/merge request, yang dibaca adalah judul, deskripsi, dan nama branch sumber.
  • Setiap rujukan yang cocok dengan tugas di proyek ini menambahkan komentar di tugas, berisi penyedia (GitHub/GitLab), tautan ke commit atau request, aksinya (misalnya opened, merged, pushed), dan nama penulis commit atau pembuat request di Git (misalnya "oleh Budi").
  • Peristiwa yang sama tidak ditautkan dua kali. Pull request yang dibuka lalu digabung menghasilkan dua komentar terpisah, satu per aksi.

Komentar diposting dari akun orang yang membuat endpoint webhook, tetapi isinya menyebut penulis di Git, jadi jelas siapa yang menulis kodenya. Bahasa komentar mengikuti bahasa akun pembuat endpoint: untuk akun berbahasa Indonesia aksinya ditulis dalam bahasa Indonesia (misalnya di-push, digabungkan, dibuka), selain itu dalam bahasa Inggris. Komentar Git ditandai sebagai komentar otomatis, sehingga tidak dihitung sebagai respons pertama SLA. Setiap komentar baru juga memicu event comment.created pada webhook workspace.

Langkah-langkah

Buat endpoint di MyPlan

Buka Pengaturan proyek, pilih GitHub & GitLab, lalu klik Buat endpoint webhook. Bagian Endpoint menampilkan URL payload dan Secret yang bisa Anda salin.

Tambahkan webhook di penyedia Git

Ikuti langkah sesuai penyedia Anda (lihat tab di bawah).

Sebut ID tugas

Tulis ID tugas di pesan commit, judul atau deskripsi pull request, atau nama branch. Contoh: git commit -m "WEB-12 perbaiki validasi login" atau branch feature/WEB-12-login.

Periksa tautan

Bagian Tautan terbaru di halaman GitHub & GitLab menampilkan commit dan request terbaru yang tertaut ke tugas. Komentar juga muncul di tugas terkait.

  1. Buka repositori, lalu Settings → Webhooks → Add webhook.
  2. Tempel URL payload dan atur content type ke application/json.
  3. Tempel secret. Setiap pengiriman diperiksa dengan tanda tangan HMAC SHA-256.
  4. Pilih Let me select individual events, lalu centang Pushes dan Pull requests.

GitHub mengirim event ping saat webhook disimpan; MyPlan menjawabnya dengan sukses tanpa membuat tautan.

Mengelola endpoint

  • Buat ulang: menerbitkan URL dan secret baru. URL dan secret lama langsung berhenti berfungsi, jadi perbarui webhook di GitHub/GitLab.
  • Putuskan: memutus repositori dari proyek. Pengiriman berikutnya ditolak.

Permintaan tanpa tanda tangan yang benar (GitHub) atau token yang salah (GitLab) ditolak.

Token API untuk CI

Selain webhook per proyek, halaman CI & GitHub di pengaturan workspace menyediakan Token API pribadi untuk CI dan skrip, misalnya untuk menambahkan komentar di tugas saat deploy selesai dari GitHub Actions.

  1. Buka Pengaturan workspace → CI & GitHub, lalu klik Buat token.
  2. Isi Nama, pilih Akses (Hanya baca (permintaan GET) atau Baca dan tulis) dan Kedaluwarsa (30 hari, 90 hari, Dalam setahun, atau Tidak pernah).
  3. Salin token sekarang dan simpan sebagai secret di CI Anda, misalnya MYPLAN_TOKEN. Token tidak akan ditampilkan lagi.

Token bertindak atas nama Anda, hanya di workspace ini. Token bisa dicabut kapan saja dengan Cabut.

Tips

  • Biasakan nama branch dengan ID tugas (WEB-12-...). Pull request dari branch itu otomatis tertaut walaupun judulnya tidak menyebut ID.
  • Satu commit atau request boleh menyebut beberapa tugas sekaligus; setiap tugas mendapat komentarnya sendiri.
  • Hanya rujukan dengan kode proyek ini yang dibaca. Untuk beberapa proyek di satu repositori, tambahkan webhook dari setiap proyek.

Izin

  • Membuat, membuat ulang, dan memutus endpoint membutuhkan peran Admin proyek (atau admin workspace). Yang lain melihat pesan Hanya admin proyek yang bisa menghubungkan repositori.
  • Membuat token API membutuhkan peran Anggota workspace atau lebih tinggi; tamu tidak bisa.

Ketersediaan paket

Endpoint GitHub & GitLab dan token API tersedia di paket Team ke atas. Lihat Paket dan tagihan.

Lewat MCP

Belum ada tool MCP untuk mengatur integrasi Git. Tautan Git muncul sebagai komentar biasa, jadi Anda bisa membacanya bersama komentar lain, misalnya dengan tool get_work_item beserta komentarnya.

Terkait

Di halaman ini