Build aplikasi Android menggunakan Bitbucket Pipelines

Intro

Halo, selamat sore temen-temen, gimana kabar puasanya ? semoga masih kuat ya, sampai nanti saatnya berbuka puasa. Perkenalkan, nama saya Andhika Yuana, saat ini saya bekerja di salah satu perusahaan IT di Jogja sebagai Android Developer, mungkin cukup perkenalannya 😀

Akhir-akhir ini saya merasa kewalahan dengan proyek yg ada di kantor, dan melakukan rutinitas untuk membuild aplikasi android yg harusnya bisa dipersingkat dengan teknologi seperti Nevercode, Bitbucket Pipelines, Gitlab CI, dan sebagainya.

Dengan menggunakan layanan tersebut, kita dapat meningkatkan produktivitas dalam proses pengembangan aplikasi android. Dari berbagai layanan yang saya sebutkan di atas, kebetulan saya sudah pernah mencoba semua.

Sedikit gambaran layanan :

Layanan ini termasuk paling mudah dipakai menurut saya, karena dengan bayar $99/tahun, temen-temen sudah dapat menggunakan layanan ini dengan limitasi tertentu.

Di Nevercode ini, kita tidak hanya bisa melakukan build aplikasi android, tetapi bisa juga untuk membuild aplikasi mobile lain seperti,  iOS, Cordova, Ionic dan React Native.

Untuk konfigurasinya pun sangat mudah, karena langsung terintegrasi dengan Bitbucket, GitHub maupun GitLab

Berbeda dengan Nevercode, layanan ini memerlukan beberapa konfigurasi untuk menggunakan fitur build otomatis untuk aplikasi androidnya, yang anda perlukan adalah menulis script bitbucket-pipelines.yml seperti ini kira kira

script di atas melakukan tagging pada repository branch master, melakukan build artifact dan mempublish ke artifactory. Proses tersebut biasa dilakukan ketika kita akan merilis suatu library atau SDK (software development kit).

Untuk fitur dan pricingnya temen-temen bisa berkunjung ke sini dan untuk pembahasan teknisnya, saya akan bahas di bawah 😀

Hampir serupa dengan Bitbucket Pipelines, di sini kita harus melakukan konfigurasi juga dengan membuat file .gitlab-ci.yml.

Kurang lebih potongan scriptnya seperti ini

Silakan temen-temen baca ini, siapa tau dapet referensi perbandingan mau pakai layanan yang mana yang cocok buat digunakan temen-temen.

Kembali ke pembahasan inti, kita akan membuat otomatisasi build aplikasi android menggunakan Bibucket Pipelines bahasa kerennya Continues Integration / Continues Delivery for Android App, Penjelasan istilah tersebut bisa temen-temen googling sendiri ya 😀

Alat dan Bahan

  • Pengetahuan tentang Android Development
  • Lancar menggunakan Git
  • Paham Bitbucket
  • Internet Wajib 😛
  • Sedikit mengerti Docker dan Bash Scripting

Let’s do it!

  • Saya sudah menyiapkan repository untuk latihan di artikel ini. Anda bisa melakukan clone repository realm-crud menggunakan git.

https://gist.github.com/andhikayuana/7cd6faf951b170607d3ac0bcc905e6b4#file-latihan-bitbucket-pipelines-android-clone-repo-sh

  atau temen-temen punya proyek android sendiri, jadi bisa dicoba untuk eksperimen kali ini dan harus digit terlebih dahulu di lokal jika belum ada.

https://gist.github.com/andhikayuana/7cd6faf951b170607d3ac0bcc905e6b4#file-latihan-bitbucket-pipelines-android-commit-repo-sh

  • Masuk ke bitbucket.org kalau temen-temen sudah punya akunnya, kalau belum silakan register terlebih dahulu.
  • Buatlah satu repository dengan nama yg temen-temen kehendaki. Untuk lebih detail bisa baca di sini.

  • Masuk ke repository yang tadi, kemudian hapus remote gitnya dan ganti remotenya ke proyek temen-temen.

  • Tampilan setelah dipush seperti berikut ini :

  • Bagian penting telah dimuali dari sini. Buat file baru di root repository dengan nama setup_export.sh dan Copy-Paste bash script berikut.

https://gist.github.com/andhikayuana/7cd6faf951b170607d3ac0bcc905e6b4#file-latihan-bitbucket-pipelines-android-setup_export-sh

  • Kemudian buat file bitbucket-pipelines.yml dengan cara, klik menu pipelines, kemudian klik start using Pipelines dan pilih Java (Gradle). Untuk langkah detailnya bisa dibaca di sini.
  • Copy-Paste berikut ini ke textbox yang telah tersedia untuk memperbaharui file bitbucket-pipelines.yml dan klik commit file.

https://gist.github.com/andhikayuana/7cd6faf951b170607d3ac0bcc905e6b4#file-latihan-bitbucket-pipelines-android-yml

Script di atas akan melakukan build ketika branch master ada push misalnya dan melakukan caching terhadap dependencies yang dibutuhkan untuk mempercepat proses build aplikasi android. Dalam script di atas melakukan build hanya untuk aplikasi versi debug saja, kemudian file apk android yang sudah jadi diupload ke Bitbucket Downloads.

  • Temen-temen akan melihat halaman seperti ini jika sudah klik commit file, karena konfigurasi kita belum sepenuhnya selesai, maka klik tombol Stop agar tidak terjadi error ketika melakukan build aplikasi android.

  • Setelah membuat file bitbucket-pipelines.yml, temen-temen harus melakukan beberapa konfigurasi terlebih dahulu untuk dapat melakukan upload apk androidnya ke Bitbucket Downloads. Caranya bisa temen-temen baca di sini.

  • Selanjutnya temen-temen bisa coba build lagi dengan cara masuk ke menu pipelines -> klik yang statusnya stopped tadi

  • Klik tombol Rerun

  • Dan proses build akan terlihat seperti ini :

  • Tara :D, temen-temen sudah berhasil membuat build apk android otomatis dengan Bitbucket Pipelines.

  • Untuk mengunduh apk androidnya, bisa ke menu Downloads 

Penutup

Setelah melakukan beberapa langkah di atas dan mungkin yang temen-temen coba terjadi error, jadi bisa ditanyakan saja :D, untuk referensi pembuatan script  bitbucket-pipelines.yml bisa baca-baca di sini.

Merci Beaucoup! 😀

Leave a Reply

Your email address will not be published. Required fields are marked *