Fastlane — apa itu, alat dan otomatisasi build aplikasi seluler

Penulis: IT Sectr Diterbitkan: 2026-04-14 Waktu membaca: 10 mnt

Fastlane adalah alat sumber terbuka untuk mengotomatiskan pembuatan, pengujian, dan publikasi aplikasi iOS dan Android. Alih-alih menjalankan puluhan perintah secara manual untuk penandatanganan, pembuatan, dan unggahan ke toko, pengembang mendeskripsikan seluruh proses di Fastfile dan menjalankannya dengan satu perintah. Menurut Fastlane Docs, 2025, alat ini digunakan di lebih dari 1,5 juta proyek di seluruh dunia. Fastlane menggabungkan utilitas untuk bekerja dengan App Store Connect, Google Play Console, dan sistem penandatanganan kode.

Poin Utama

  • Fastlane — Alat otomatisasi Open Source untuk build dan pengiriman iOS dan Android
  • Actions — Perintah bawaan untuk bekerja dengan App Store, Google Play, penandatanganan, dan pengujian
  • Lanes — Skenario otomatisasi di Fastfile yang menggabungkan urutan actions
  • Match — Sistem manajemen sertifikat dan provisioning profiles untuk iOS
  • Alat — scan (pengujian), gym (build), deliver (unggah), snapshot (tangkapan layar)

Apa itu Fastlane dan bagaimana ia mengotomatiskan build seluler

Fastlane adalah alat otomatisasi build seluler, ditulis dalam Ruby dan didistribusikan di bawah lisensi MIT. Ia mengotomatiskan tugas rutin pengembang seluler: membangun aplikasi, menjalankan pengujian, membuat tangkapan layar, menandatangani kode, dan mengunggah file biner ke App Store atau Google Play. Alih-alih 15–20 perintah manual, pengembang menjalankan satu perintah fastlane dengan nama skenario.

Fastlane bekerja sebagai pembungkus untuk utilitas Xcode (xcodebuild, xcrun) dan Android SDK (gradlew, apksigner, bundletool), menyediakan antarmuka terpadu untuk kedua platform. Ini sangat berharga bagi tim yang memelihara versi iOS dan Android dari aplikasi yang sama — Fastfile yang identik dapat mendeskripsikan build untuk kedua platform dengan perbedaan parameter yang minimal.

Menurut GitHub, Fastlane memiliki lebih dari 39 ribu bintang dan merupakan standar otomatisasi dalam pengembangan seluler. Alat ini didukung oleh komunitas dan perusahaan Google — Fastlane terintegrasi ke dalam Firebase sebagai cara yang direkomendasikan untuk mengirimkan aplikasi Android ke Google Play Console.

Arsitektur Fastlane: Actions, Lanes, dan Alat

Arsitektur Fastlane dibangun di atas tiga tingkat: actions (perintah dasar), lanes (skenario), dan alat (utilitas khusus). Actions adalah fungsi Fastlane individual, masing-masing melakukan tindakan tertentu: membuat tangkapan layar, membangun IPA, mengunggah ke TestFlight. Lanes menggabungkan beberapa actions ke dalam skenario berurutan yang dijelaskan dalam Fastfile.

Fastlane Actions

Actions adalah blok bangunan Fastlane. Setiap action menerima parameter dan melakukan satu tugas. Misalnya, action gym membangun aplikasi iOS, scan menjalankan pengujian, pilot mengunggah build ke TestFlight. Fastlane memiliki lebih dari 200 actions bawaan, dokumentasi untuk setiap action tersedia melalui perintah fastlane action [nama].

Jika actions bawaan tidak mencukupi, pengembang dapat membuat custom action di Ruby dan menghubungkannya di Fastfile. Custom actions didistribusikan melalui plugin Fastlane, yang dipublikasikan di Rubygems dan diinstal melalui file FastfilePlugin di root proyek.

Lanes dan komposisinya

Lane adalah skenario otomatisasi bernama yang menggabungkan beberapa actions ke dalam urutan logis. Lane dapat memanggil lanes lain (private lanes), meneruskan parameter, dan menangani kesalahan. Ini memungkinkan pembangunan hierarki skenario: lane build dasar, lane deploy, lane siklus CI/CD lengkap.

Alat utama Fastlane: scan, gym, match, deliver

Fastlane mencakup serangkaian alat khusus, yang masing-masing memecahkan tugas otomatisasi seluler tertentu. Alat dijalankan sebagai actions di dalam lanes atau langsung dari baris perintah. Mari kita lihat empat alat utama yang mencakup kebutuhan CI/CD dasar untuk iOS dan Android.

AlatFungsiPerintah
scanMenjalankan pengujian Unit dan UI di simulator iOSfastlane scan
gymMembangun file IPA atau APP untuk iOSfastlane gym
matchSinkronisasi sertifikat dan provisioning profiles melalui Gitfastlane match
deliverMengunggah file biner dan metadata ke App Store Connectfastlane deliver
snapshotPembuatan tangkapan layar otomatis di berbagai perangkatfastlane snapshot

Scan menyederhanakan menjalankan pengujian Xcode, secara otomatis memilih simulator yang sesuai dan memformat laporan. Gym membangun aplikasi dengan flag kompilasi optimal dan mendukung exportOptions.plist untuk berbagai jenis build (development, adhoc, appstore). Deliver memungkinkan mengunggah tidak hanya file biner, tetapi juga tangkapan layar, deskripsi, versi, dan harga melalui satu file metadata.

Alat Match layak mendapatkan perhatian khusus — ia memecahkan masalah penyimpanan dan sinkronisasi sertifikat iOS dalam tim. Match mengenkripsi dan menyimpan sertifikat serta provisioning profiles di repositori Git, dan pengembang mendapatkannya secara otomatis saat menjalankan fastlane match. Ini menghilangkan konfigurasi manual setiap tempat kerja.

Snapshot: pembuatan tangkapan layar

Snapshot adalah alat untuk membuat tangkapan layar aplikasi seluler secara otomatis di berbagai perangkat dan bahasa. Snapshot menjalankan pengujian UI di simulator iOS, mengambil tangkapan layar di setiap langkah pengujian. Hasilnya disimpan di direktori fastlane/screenshots dan dapat diunggah ke App Store Connect melalui deliver.

Untuk Android screengrab menjalankan fungsi serupa di emulator Android. Kedua alat mendukung lokalisasi — tangkapan layar dibuat untuk setiap bahasa, yang menyederhanakan persiapan materi untuk publikasi di toko aplikasi multibahasa.

Konfigurasi Fastlane untuk aplikasi iOS

Untuk proyek iOS, Fastlane dikonfigurasi melalui Gemfile (instalasi gem fastlane) dan Fastfile di direktori fastlane. Konfigurasi awal dilakukan dengan perintah fastlane init, yang membuat struktur direktori dasar, meminta data App Store Connect, dan menghasilkan template Fastfile dengan lanes dasar.

Perintah utama untuk iOS — fastlane match — harus dijalankan terlebih dahulu untuk mendapatkan sertifikat dan provisioning profiles. Setelah penandatanganan berhasil, Fastlane dapat membangun aplikasi (gym), menjalankan pengujian (scan), dan mengunggah file biner (pilot atau deliver).

ruby
# Fastfile untuk aplikasi iOS
default_platform(:ios)

lane :build do
  cocoapods
  scan(scheme: 'App', devices: ['iPhone 15'])
  gym(scheme: 'App', export_method: 'app-store')
end

lane :deploy do
  match(type: 'appstore')
  build
  pilot(skip_waiting_for_build_processing: true)
  slack(message: 'Versi baru telah diunggah ke TestFlight')
end

Untuk bekerja dengan TestFlight gunakan action pilot — ia mengunggah IPA dan mengelola penguji. Fastlane mendukung upload_to_testflight (sinonim untuk pilot) dan secara otomatis menangani penantian pemrosesan build oleh Apple, yang dapat memakan waktu 5 hingga 30 menit.

Konfigurasi Fastlane untuk aplikasi Android

Untuk proyek Android, Fastlane dikonfigurasi dengan cara yang sama, tetapi alih-alih alat Xcode, Gradle dan Android SDK digunakan. Fastlane untuk Android mendukung pembangunan APK dan AAB, penandatanganan melalui apksigner atau jarsigner, menjalankan pengujian instrumental, dan unggahan ke Google Play Console melalui action Supply.

Perbedaan utama — build Android tidak memerlukan manajemen sertifikat melalui match (penandatanganan Android dikelola melalui Keystore, yang disimpan secara terpisah). Fastlane untuk Android menggunakan action gradle untuk menjalankan tugas Gradle apa pun dan action supply untuk bekerja dengan Google Play.

ruby
# Fastfile untuk aplikasi Android
default_platform(:android)

lane :build do
  gradle(task: 'clean assembleRelease')
  gradle(task: 'testReleaseUnitTest')
end

lane :deploy do
  build
  supply(
    track: 'internal',
    aab: 'app/build/outputs/bundle/release/app-release.aab'
  )
end

Untuk bekerja dengan Google Play Console diperlukan akun layanan Google Cloud dengan akses ke API Google Play. Fastlane menerima kunci JSON akun layanan melalui variabel lingkungan SUPPLY_JSON_KEY atau parameter json_key di action supply. Trek publikasi bisa internal, alpha, beta, atau production.

Integrasi Fastlane dengan sistem CI/CD

Fastlane terintegrasi dengan sistem CI/CD apa pun yang dapat menjalankan skrip Ruby: Jenkins, Travis CI, GitHub Actions, GitLab CI, Bitrise, dan CircleCI. Integrasi meliputi instalasi gem fastlane dan menjalankan perintah fastlane [lane_name] di tahap script pipeline.

Untuk CI/CD, penting untuk mengatur variabel lingkungan untuk menyimpan data sensitif: MATCH_PASSWORD (kata sandi enkripsi sertifikat), FASTLANE_USER (Apple ID), FASTLANE_PASSWORD (kata sandi Apple ID). Di Travis CI, variabel dienkripsi melalui travis encrypt, di GitHub Actions — melalui Secrets repository.

Praktik yang direkomendasikan — gunakan fastlane match di CI/CD dengan flag readonly untuk mencegah perubahan tidak sengaja pada repositori sertifikat. Untuk Android gunakan Keystore, yang dienkode dalam Base64 dan disimpan dalam variabel lingkungan, yang didekripsi dan disimpan ke file sementara pada tahap before_install.

Fastlane Match: manajemen sertifikat dan profil

Fastlane Match adalah alat untuk mengotomatiskan manajemen sertifikat iOS dan provisioning profiles, salah satu fungsi Fastlane yang paling berharga bagi tim. Match membuat repositori Git terenkripsi (atau menggunakan yang sudah ada) di mana semua sertifikat dan profil disimpan, disinkronkan antara pengembang dan server CI/CD.

Match mendukung lima jenis profil: development, adhoc, appstore, enterprise, dan developer_id. Setiap jenis disimpan di direktori terpisah di dalam repositori. Perintah fastlane match development menginstal sertifikat development di mesin lokal, dan fastlane match appstore menginstal profil App Store untuk build di CI.

ruby
# Menggunakan Match di Fastfile
lane :setup_signing do
  match(
    type: 'appstore',
    readonly: true,
    git_branch: 'main'
  )
end

lane :update_profiles do
  match(
    type: 'development',
    force: true,
    app_identifier: ['com.example.app', 'com.example.app.watchkitapp']
  )
end

Keamanan Match dijamin dengan enkripsi semua file sebelum commit ke Git. Kata sandi enkripsi diatur melalui variabel lingkungan MATCH_PASSWORD dan harus sama untuk semua anggota tim. Match menggunakan OpenSSL untuk enkripsi dan tidak menyimpan kata sandi dalam teks biasa di repositori.

Pertanyaan yang Sering Diajukan

Apa itu Fastlane dalam pengembangan seluler?

Fastlane adalah alat otomatisasi Open Source untuk aplikasi iOS dan Android. Ia mengotomatiskan pembangunan, pengujian, penandatanganan kode, dan pengiriman ke App Store dan Google Play melalui satu file konfigurasi Fastfile dan serangkaian alat bawaan.

Alat apa saja yang termasuk dalam Fastlane?

Alat utama Fastlane: scan (pengujian), gym (build iOS), match (sertifikat), deliver (App Store), pilot (TestFlight), snapshot (tangkapan layar), supply (Google Play), dan frameit (bingkai untuk tangkapan layar). Setiap alat tersedia sebagai action di dalam lane atau dari baris perintah.

Bagaimana cara mengkonfigurasi Fastlane untuk aplikasi iOS?

Instal gem fastlane, jalankan fastlane init di root proyek. Konfigurasikan Fastfile dengan lanes untuk build (gym) dan pengujian (scan). Atur Match untuk manajemen sertifikat melalui repositori Git. Tambahkan lane deploy dengan pilot atau deliver untuk unggahan ke App Store Connect.

Bagaimana cara mengkonfigurasi Fastlane untuk aplikasi Android?

Jalankan fastlane init dengan menyebutkan package name. Gunakan action gradle untuk menjalankan tugas Gradle (assembleRelease, testReleaseUnitTest). Konfigurasikan Keystore melalui variabel lingkungan. Gunakan action supply untuk mengunggah AAB atau APK ke Google Play Console di trek yang diinginkan.

Bagaimana cara mengintegrasikan Fastlane dengan sistem CI/CD?

Instal gem fastlane di server CI/CD dan tambahkan perintah fastlane [lane_name] ke tahap script pipeline. Atur variabel lingkungan FASTLANE_USER, FASTLANE_PASSWORD, dan MATCH_PASSWORD di variabel rahasia CI/CD. Gunakan match readonly untuk CI guna menghindari perubahan tidak sengaja pada sertifikat.

Kesimpulan

  • Fastlane — Alat Open Source untuk otomatisasi build seluler dengan dukungan iOS dan Android
  • Actions — Perintah dasar untuk build, pengujian, penandatanganan, dan pengiriman (lebih dari 200 bawaan)
  • Lanes — Skenario di Fastfile yang menggabungkan beberapa actions ke dalam proses CI/CD berurutan
  • Match — Sistem manajemen sertifikat iOS melalui repositori Git terenkripsi
  • Konfigurasi iOS mencakup scan untuk pengujian, gym untuk build, pilot untuk TestFlight
  • Konfigurasi Android mencakup gradle untuk build dan supply untuk Google Play
  • Fastlane terintegrasi dengan Jenkins, Travis CI, GitHub Actions, dan platform CI/CD lainnya

Kami akan mengembangkan aplikasi seluler turnkey

IT Sectr membuat aplikasi iOS dan Android untuk startup dan bisnis sejak 2017. Kami akan memberi saran dan mengusulkan solusi terbaik.

Diskusikan proyek

Baca juga