Apa itu CI/CD? - Penjelasan Singkat sebuah Praktik yang Saat ini Banyak Digunakan Para Developer

Agustus 26, 2022

CI/CD merupakan singkatan dari Continuous Integration and Continuous Delivery

Continous Integration artinya sebuah praktik berkelanjutan untuk menggabungkan/menyalin semua kontribusi yang dilakukan oleh para developer/kontributor ke dalam satu proyek. Tidak hanya menggabungkan setiap salinan para kontributor namun sekaligus juga memberikan pengujian otomatis (automated testing) dan pemeriksaan kualitas lainnya (quality check).

Continous Integration membantu para developer atau pengembang mengintegrasikan code mereka ke dalam branch utama di sebuah repositori shared, bisa dilakukan secara cepat dan berkelanjutan. Bisa saja para developer meng-commit-kan code mereka setiap harinya. Jadinya setiap commit tersebut akan mengaktifkan automated test dan build. Setiap bug akan langsung teridentifikasi dan bisa diperbaiki dalam hitungan menit.

Pelajari tentang git, commit, branch, dan repositori pada artikel sebelumnya di sini: https://ryan13-pc.blogspot.com/2020/04/apa-itu-git-version-control-system-manfaat-git-perintah.html

Lalu Continous Delivery berarti mengotomatiskan rilis dan penyebaran proyek kerja ke dalam lingkungan produksi untuk memastikan bahwa perangkat lunak selalu siap untuk digunakan. 

Singkatnya, mekanisme CI/CD adalah mengotomatisasi siklus Test, Build, dan Deploy.

 

 

 

Jika ingin memanfaatkan mekanisme CI/CD, maka ada tools khusus yang digunakan dan tools ini perlu diintegrasikan dengan tools verison control system seperti Git. Beberapa tools khusus ini contohnya adalah Jenkins dan CircleCI. Tool-tool tersebut dapat dikonfigurasi untuk secara otomatis mendeteksi commit ke dalam version control system, dan secara otomatis melakukan siklus pengujian, pembuatan, dan penerapan (Test, Build, Deploy). 

Selain itu, dengan membuat sistem yang memberi tahu developer ketika ada bagian dari siklus yang gagal, developer dapat dengan cepat memperbaiki masalah tersebut. CI/CD adalah mekanisme yang bekerja sangat baik dengan pengembangan/developing, yang terus-menerus merilis sebuah perkembangan aplikasi baru dalam waktu singkat.

Sekian dulu, semoga penjelasan singkat di atas bisa bermanfaat.

Terima kasih sudah membaca.

Referensi: progate.com, circleci.com, gitlab.com