10 poin oleh ironlung 2023-10-24 | Belum ada komentar. | Bagikan ke WhatsApp
  • Ulasan proyek open source untuk migrasi dari Jira ke GitLab
  • Latar belakang
    • Kabar penghentian dukungan produk server Jira mulai 15 Februari 2024
    • Alternatif yang dapat dipilih: Pivotal Tracker, IBM Engineering Requirements Management DOORS Next, Rally Software, GitLab, ServiceNow Agile Development, GitHub, dan lainnya
    • Bagaimana dengan pengguna yang memakai server Jira? Haruskah membuat proyek untuk migrasi ke GitLab?
  • Status fitur migrasi Jira → GitLab
    • Di GitLab, title, description, dan label dari issue Jira dapat disalin
    • Metadata lainnya diimpor ke dalam description
    • Menyediakan UI untuk memetakan Jira User ke GitLab User
  • Keterbatasan migrasi Jira → GitLab
    • Wajib mengatur Jira Integration
    • Hanya menyediakan Jira API v3
    • Karena Jira dan GitLab memakai sintaks yang berbeda, migrasi tidak berlangsung sepenuhnya akurat
      • Di description, Heading 1, Heading 2, Heading 3 berpindah menjadi Numbered, SubNumbered, SubNembered 2
      • GitLab menggunakan sintaks Markdown, sedangkan Jira memakai format proprietari bernama ADF(Atlassian Document Format), sehingga timbul perbedaan ini
    • issue type, priority, dan label juga tidak termigrasi secara akurat
  • Arah proyek migrasi internal perusahaan
    • Tujuan:
      • Menetapkan keputusan ke mana Jira epic dipindahkan, dan ke mana issue harus dipindahkan
      • Menjalankan migrasi secara rinci untuk menentukan field issue Jira seperti title, description, label, component, dan lainnya harus dipetakan ke field apa di GitLab
    • Saat memindahkan Jira epic ke GitLab epic, pengguna diberi keleluasaan untuk memutuskan apakah akan memigrasikannya sebagai sub-epic di sub-group atau sebagai epic di grup induk
    • issue dimigrasikan tetap sebagai issue
    • Batasan:
      • Ingin memigrasikan sub-task juga sebagai task di bawah issue sub-task, tetapi GitLab tidak mendukung Task API
      • Di Jira ada terlalu banyak field;
        • Fitur sederhana seperti description, label, dan component juga didukung di GitLab sehingga bisa dimigrasikan
        • But!!! field terkait time tracking dan security tidak didukung di GitLab sehingga tidak bisa dimigrasikan
    • Rancangan akhir
      • Proyek Jira → Proyek GitLab
      • Epic Jira → Epic GitLab
      • Issue Jira → Issue GitLab
      • title, description, version, story point, dan resolution di Jira dipetakan apa adanya ke GitLab
      • Jira resolution → GitLab closed, Jira story point → GitLab weight
      • Jira issue type, component, status, priority → dimigrasikan dengan memanfaatkan label dan scoped label di GitLab
      • custom field juga dikembangkan
      • description diparse seluruhnya dengan regular expression, lalu isinya diubah ke Markdown untuk dimigrasikan
    • Hasil proyek
      • Memigrasikan mode bawaan Jira cukup layak dipakai
      • Selama plugin dan automation dikecualikan, migrasi berjalan baik
      • Sebagian besar dipetakan ke GitLab Label
      • Membuat epic di grup induk target
      • Link issue yang terhubung di Jira juga dimigrasikan ke GitLab
      • Jira wiki markup diubah menggunakan Markdown converter
      • attachment dan comment juga ditambahkan ke issue
      • Jika terlalu banyak membuat custom field, migrasi menjadi sulit
    • Hal yang dilakukan dengan baik
      • Versi cloud dibuat lebih dulu, lalu ditambahkan versi server
      • Dengan hanya mengatur pemetaan custom field, sebagian besar migrasi dapat dilakukan
      • Dengan menyusun pemrosesan paralel secara tepat, migrasi menjadi lebih dari 3 kali lebih cepat dibanding saat tidak melakukannya
      • Pengelolaan konfigurasi dilakukan berbasis YAML agar sesuai tren
      • Dibuat open source agar siapa pun bisa melakukan migrasi
      • Paket didistribusikan lewat Brew
    • Hal yang perlu diperbaiki
      • Saat memigrasikan dari Jira server
        • Perlu tambahan pemetaan sprint
        • Tidak ada cara untuk menangani field Cascade
      • Saat memigrasikan dari Jira cloud
        • Diperlukan pengujian pada banyak kasus nyata, seperti migrasi data terkait plugin
    • Halaman proyek open source terkait:

Belum ada komentar.

Belum ada komentar.