PPL 2020 — Document Builder: GitLab dan Document Builder
Selain menerapkan version control dengan Git, kami juga menerapkan project management dengan bantuan GitLab. Mirip dengan GitHub, GitLab merupakan platform DevOps yang dilengkapi dengan berbagai macam tool, salah satunya adalah git repository management.
Kami tidak akan menjelaskan seluruh fitur yang ada, tapi kami akan menjelaskan fitur yang kami gunakan pada project Document Builder ini.
Release: Source Code Management
Fitur ini adalah salah satu fitur yang paling sering digunakan. Terlihat dari namanya, GitLab mendukung source code management menggunakan Git. Fitur ini memungkinkan seseorang untuk mengembangkan aplikasi dalam tim.
Tentu saja, kelompok kami menggunakan fitur ini. Setiap anggota tim akan membuat branch-nya masing-masing, dan akan melakukan merge ke branch utama yaitu master/staging melalui prosedur merge request yang mana kodenya akan di-review oleh setidaknya dua orang anggota tim lain sebelum di-merge.
Release: Code Review
Pada saat seorang anggota tim melakukan merge request, maka kode anggota tim tersebut akan di-review oleh dua anggota tim lain. GitLab juga mendukung fitur untuk melakukan code review tersebut sehingga lebih mudah dan bisa dilihat oleh semua orang. Tentu saja, aturan tersebut hanya spesifik pada Document Builder dan bisa diatur sesuai keinginan tim Anda.
Plan: Issue Tracking
Apabila Anda ingin mengembangkan aplikasi yang cukup kompleks, maka issue tracking bisa menjadi sangat berguna untuk Anda. Singkatnya, issue bisa dikatakan sebagai to-do dari pekerjaan Anda. Orang lain bisa melaporkan bug maupun feature request dengan membuat issue yang akan tim Anda proses. Anda bisa memberikan tag maupun prioritas ke dalam suatu issue.
Plan: Issue/Kanban Boards
Selain issue tracking, GitLab juga mendukung kanban board. Kanban board merupakan alat bantu untuk melakukan task management yang membantu memvisualisasikan pekerjaan apa saja yang akan/sedang/selesai dilakukan. Kanban board biasanya digunakan oleh project yang menerapkan prinsip agile.
Verify & Release: CI/CD
CI (Continous Integration)/CD (Continous Delivery) merupakan suatu proses integrasi dan peluncuran secara terus menerus (continous). Maksudnya adalah setiap kode di-push, maka akan langsung diintegrasikan dan diluncurkan secara otomatis. Hal ini tentu akan mempermudah DevOps dalam melakukan pekerjaannya, dan harapannya bug akan cepat mudah ditemukan dan diperbaiki karena setiap integrasi dan peluncuran dilakukan dengan perubahan yang sedikit.
Dalam Document Builder, kami memanfaatkan fitur ini untuk melakukan testing, lint, static code analysis, dan deployment. Proses tersebut akan dijalankan secara otomatis oleh GitLab dan kita cukup lihat hasil akhirnya saja. Hal tersebut bisa mengurangi human error dalam proses integration dan deployment.
…dan Masih Banyak Lagi
GitLab masih mempunyai banyak fitur yang lain. Tentu saja, dalam menggunakan GitLab Anda tidak perlu menggunakan semuanya. Apabila Anda tertarik untuk mengeksplorasi fitur lain, Anda bisa langsung ke halaman About GitLab.
Sekian penjelasan saya tentang GitLab dan beberapa dari fitur-fiturnya. Jangan lupa untuk melihat artikel oleh anggota tim yang lain.