Thing I Learned at Kitabisa: Auto Deployment

Lanjutan dari cerita ini, hal berikutnya yang gw pelajari adalah auto-deployment. Ini membuat gw takjub, karena selama hidup di dunia software engineering gw melakukannya lewat copy-paste source code nya, serius. Belum menggunakan git, setiap perubahan yang akan di-deploy akhirnya perlu dicatat pada file excel. Di file ini dicatat nama-nama file yang berubah, ukuran dan tanggal terakhir update nya.

Sebetulnya, auto deployment sendiri sudah ngga asing. Di 1-2 tahun terakhir sebelum resign, sudah mulai ada wacana untuk menerapkan CI/CD, kami juga sudah mengadakan training beberapa kali untuk mengenal konsep DevOps, sayangnya belum sampai pada praktik.

Di awal join kitabisa, deployment terjadi ketika kita melakukan push ke branch master. Gw pun bertanya-tanya ini proses nya gimana sampai akhir nya gw tau kitabisa menggunakan forge. Simpelnya, setelah ada push ke master, si forge ini akan detect kemudian menjalankan script yang untuk melakukan deployment code tersebut ke production. Tidak ada lagi kegiatan untuk copy file ke flashdisk, bawa ke ruang khusus untuk deployment (karena akses ke server production saat itu memang sangat terbatas), paste isi flashdisk ke server yang dituju.

Kitabisa pada jaman ini tentu sudah jauh berbeda dengan kitabisa sekarang. Dahulu kami hanya punya satu code base — monolith istilahnya — dengan basis PHP, sekarang kami punya puluhan backend services, beberapa web frontend, aplikasi android dan iOS, dan lain-lain. Strategi deployment di atas tentu sudah tidak bisa lagi memenuhi kebutuhan yang ada saat ini.

Cerita lebih detil mengenai perjalanan Kitabisa melalui proses auto-deployment ini akan tersedia di postingan berikutnya :).