Langsung ke konten utama
Pr Preview

Review setiap pull request di ponsel asli

CI Anda mengunggah web build setiap pull request ke channel Capgo masing-masing. Reviewer cukup scan QR code atau ganti channel di aplikasi untuk mencobanya, dan channel akan dihapus saat PR ditutup. Perubahan pada code native tetap memerlukan build baru.

  • Satu channel per pull request
  • Preview QR code
  • Pembersihan otomatis saat PR ditutup

Masalahnya

Perubahan web tidak seharusnya butuh binary baru untuk direview

Review PR dengan build testing store

  1. Developer membuka PR

    Perubahan sudah siap direview, tapi belum ada yang bisa mencobanya di ponsel.

  2. Build, sign, dan upload

    Seseorang melakukan build native binary untuk branch tersebut, melakukan sign, upload ke TestFlight atau Play testing track, lalu menunggu prosesnya.

  3. Invite dan install

    Reviewer harus ditambahkan sebagai tester dan menginstall build yang sama.

  4. Ulangi untuk setiap perbaikan

    Setiap komentar review yang mengubah code berarti butuh build baru, upload baru, dan install baru.

Setiap sesi review harus menunggu native build, padahal hanya JavaScript yang berubah.

Dampaknya bagi tim

Setiap build

Menunggu pemrosesan store

Setiap build yang Anda upload ke TestFlight atau Play testing track diproses dulu sebelum tester bisa menginstalnya. Itu terjadi pada setiap build.

Setiap PR

Butuh build native sendiri untuk testing

Tanpa live update, reviewer hanya bisa mencoba branch setelah ada yang build, sign, dan upload binary baru, bahkan untuk perubahan web-only.

Feedback terlambat

Review terjadi setelah author pindah ke tugas lain

Saat review menunggu build, feedback datang terlambat, author sudah mengerjakan tugas lain, dan branch makin jauh dari main.

Cara kerjanya

Cara tim preview pull request dengan Capgo

Empat langkah CI: set up scoped key sekali, upload tiap push, bagikan preview, cleanup saat PR ditutup. Semua command di bawah ini dari dokumentasi Capgo.

  1. Buat App Preview key dan aktifkan preview

    Admin membuat App Preview API key untuk CI. Key ini bisa membuat preview channel dan upload bundle, tapi tidak bisa mengubah channel default atau production Anda. Preview hanya perlu diaktifkan sekali per app.

    # once, run by an admin (not the preview key)
    npx @capgo/cli@latest app set com.example.app --preview
    Kunci API API App Preview
  2. Upload build PR ke channel tersendiri

    Pada setiap push, CI akan build web app dan menguploadnya dengan versi bundle yang unik. bundle upload --channel akan membuat channel pr-<number> jika belum ada dan menghubungkan bundle ke channel tersebut.

    npx @capgo/cli@latest bundle upload com.example.app \
      --apikey "$CAPGO_PREVIEW_KEY" \
      --path ./dist \
      --channel "pr-$PR_NUMBER" \
      --bundle "1.2.3-pr.$PR_NUMBER.$GITHUB_RUN_NUMBER"
    Lihat PR previews di dokumentasi channel
  3. Posting preview di PR

    get-qr mencetak QR code untuk channel, atau preview URL dengan --url, sehingga CI bisa menambahkannya ke komentar PR.

    npx @capgo/cli@latest get-qr com.example.app \
      --channel "pr-$PR_NUMBER" \
      --apikey "$CAPGO_PREVIEW_KEY" \
      --url
    referensi get-qr
  4. Hapus channel saat PR ditutup

    Jalankan ini pada event pull request closed. Dengan App Preview key, sistem hanya akan menghapus channel dan linked bundle yang dibuat oleh key tersebut.

    npx @capgo/cli@latest channel delete \
      "pr-$PR_NUMBER" com.example.app \
      --apikey "$CAPGO_PREVIEW_KEY" \
      --delete-bundle \
      --success-if-not-found
    referensi channel CLI

Cara lain reviewer pindah ke channel PR

Keduanya butuh channel yang mendukung self-assignment. App Preview key tidak mengaturnya, jadi dengan key tersebut, bagikan QR preview atau atur device override di console.

Menu shake

Aktifkan shake menu di internal build. Tester cukup goyangkan perangkat untuk membuka menu test Capgo, dan shake channel selector memungkinkan mereka memilih channel.

// capacitor.config.ts (internal builds)
CapacitorUpdater: {
  shakeMenu: true,
}

Pengalih tampilan dalam aplikasi

Tambahkan field channel ke layar developer settings dan panggil setChannel() dengan nama channel PR.

import { CapacitorUpdater } from '@capgo/capacitor-updater'

await CapacitorUpdater.setChannel({
  channel: 'pr-123',
  triggerAutoUpdate: true,
})
Referensi setChannel()

Siapa yang menggunakan PR preview

Siapa pun yang mereview pull request bisa mengeceknya langsung di ponsel, tidak hanya author.

QA Engineer

  • Test web build PR di perangkat Anda sendiri
  • Pindah antar channel PR tanpa perlu reinstall app
  • Nama channel sesuai dengan nomor PR, jadi Anda tahu code mana yang sedang dijalankan

Manajer Proyek

  • Coba sebuah fitur di ponsel sebelum di-merge
  • Scan QR code yang ada di PR
  • Berikan feedback langsung di PR tersebut

Developer

  • Dapatkan feedback device saat PR masih open
  • Setiap push akan memperbarui channel PR
  • Tanpa Native Build untuk perubahan JavaScript saja

Testing build vs channel PR Capgo

  • Memasukkan PR ke dalam ponsel

    TestFlight / Play testing
    Native build, signing, dan proses store
    Channel PR Capgo
    Web build dan upload bundle dari CI
  • Beralih antar PR

    TestFlight / Play testing
    Install build lain
    Channel PR Capgo
    Scan QR code lain atau ganti channel
  • Setup reviewer

    TestFlight / Play testing
    Undang tester, lalu install tiap build
    Channel PR Capgo
    Cukup install app sekali
  • Perubahan Native code dan plugin

    TestFlight / Play testing
    Ya
    Channel PR Capgo
    Tidak, butuh Native Build

Aplikasi yang dibangun dengan Capacitor

Aplikasi produk butuh review perubahan mobile

Aplikasi edukasi, event, dan komunitas bisa melakukan perubahan onboarding, latihan, sesi live, dan langganan secara bersamaan dalam tahap review. PR previews memungkinkan tim product, QA, dan support menginspeksi mobile-ready build sebelum proses merge.

StudySmarter - ikon aplikasi sekolah & universitas EDUKASI

StudySmarter - sekolah & universitas

Aplikasi edukasi di mana perubahan materi, kursus, dan langganan perlu ditinjau stakeholder.

Instalasi Google Play
6,5 jt
Rating toko
4.8
Ikon aplikasi Poll Everywhere BISNIS

Poll Everywhere

Aplikasi engagement live di mana alur event harus diuji sebelum merge.

Instalasi Google Play
1,1 jt
Rating toko
3.2
lichess • Ikon aplikasi catur online gratis PAPAN PERMAINAN

lichess • Catur Online Gratis

Aplikasi komunitas di mana layar turnamen dan analisis terbantu dengan device preview.

Instalasi Google Play
11,3 jt
Rating toko
4.3

Bukti nyata pelanggan

Apa kata tim yang merilis aplikasi dengan Capgo

5.0/5 Diberi rating oleh tim developer 9,400+ tim Baca ulasan

Nate van Jole

CTO, Private

&ldquo;Setup-nya selesai kurang dari sehari. Rollout berbasis channel memungkinkan saya menguji di perangkat sendiri sebelum sampai ke pengguna production.&rdquo;

Potret Michael Haberler

Michael Haberler

nethead emeritors

&ldquo;Plugin updater-nya mantap. Berjalan lancar di tempat saya, dan Live Update sangat mempercepat proses testing.&rdquo;

no-tone @ Webincode

Developer, Webincode

&ldquo;Bisa menambahkan Device ID ke grup tertentu dan push perubahan hanya ke grup itu sangat membantu.&rdquo;

FAQ

Pertanyaan tim seputar PR preview

Jawaban lugas untuk tim yang mengatur CI dan tim reviewer.

Apakah reviewer butuh build baru untuk setiap PR?

Tidak jika PR hanya mengubah web layer. Reviewer cukup install app sekali, lalu JavaScript, HTML, CSS, dan aset tiap PR akan masuk ke channel-nya sendiri. Jika PR menambah plugin atau mengubah native code, maka butuh native build. Jalankan build needed di CI untuk mendeteksinya.

Apa yang butuh native build

Apakah CI key bisa mengakses channel production kami?

Tidak jika menggunakan App Preview API key. Key ini hanya bisa membuat preview channel, upload bundle, dan menghapus channel serta bundle yang ia buat sendiri. Ia tidak bisa mengubah channel default atau utama. Di GitHub Actions, jalankan job pada pull_request, bukan pull_request_target, dan batasi hanya untuk PR dari repository yang sama.

Kunci API API App Preview

Bagaimana cara reviewer membuka preview?

Admin cukup mengaktifkan preview sekali dengan app set --preview. Setelah itu, get-qr akan mencetak QR code untuk channel PR, dan --url akan mencetak URL web preview serta deep link. Cukup posting link tersebut di komentar PR.

Referensi get-qr

Apa yang terjadi dengan channel dan bundle PR lama?

Tambahkan job pada event pull request closed yang menjalankan channel delete dengan --delete-bundle dan --success-if-not-found. Dengan App Preview key, ini akan menghapus channel beserta bundle yang terhubung. Bundle dari push sebelumnya bisa dihapus dengan bundle cleanup menggunakan key yang memiliki hak akses delete.

referensi channel CLI

Apakah ini bisa digunakan dengan GitLab, Bitbucket, atau Azure DevOps?

Ya. Langkah-langkahnya adalah Capgo CLI commands, jadi bisa dijalankan di CI mana pun. Dokumentasi kami menyediakan panduan integrasi untuk GitHub Actions, GitLab CI, Bitbucket Pipelines, dan Azure DevOps.

Integrasi CI/CD

Preview pull request berikutnya di ponsel

Tambahkan langkah upload, QR, dan cleanup ke CI Anda dan coba langsung di aplikasi Anda selama masa free trial.

Uji coba gratis 14 hari, tanpa kartu kredit. Perubahan Native tetap butuh build baru.