Lompat ke konten

Pengaturan Masalah

Pengaturan untuk masalah umum ketika membangun aplikasi asli dengan Capgo Cloud Build.

”Gagal Unggah” atau “Koneksi waktu out”

Bab berjudul “”Gagal Unggah” atau “Koneksi waktu out””

Gejala:

  • Gagal bangun selama unggahan proyek
  • Error waktu tunggu setelah 60 detik

Solusi:

  1. Periksa koneksi internet Anda

    Jendela terminal
    # Test connection to Capgo
    curl -I https://api.capgo.app
  2. Kurangi ukuran proyek

    • Pastikan node_modules/ __CAPGO_KEEP_0__ tidak sedang diunggah (seharusnya dikecualikan secara otomatis)
    • Periksa file besar di proyek Anda:
    Jendela terminal
    find . -type f -size +10M
  3. Periksa kadaluarsa URL unggah

    • URLs upload akan kadaluarsa setelah 1 jam
    • Jika Anda mendapatkan kesalahan URL kadaluarsa, jalankan kembali perintah build

”Waktu build melebihi batas setelah 10 menit”

Judul bagian “”Waktu build melebihi batas setelah 10 menit””

Gejala:

  • Waktu build melebihi waktu maksimum yang diizinkan
  • Status menampilkan timeout

Solusi:

  1. Optimalkan dependensi

    • Hapus paket npm yang tidak digunakan
    • Gunakan npm prune --production sebelum membangun
  2. Periksa masalah jaringan selama pembangunan

    • Beberapa dependensi mungkin mengunduh file besar selama pembangunan
    • Pertimbangkan untuk mempercepat dengan menggunakan file lock
  3. Tinjau dependensi native

    Jendela terminal
    # iOS - check Podfile for heavy dependencies
    cat ios/App/Podfile
    # Android - check build.gradle
    cat android/app/build.gradle
  4. Hubungi dukungan

    • If your app memang memerlukan waktu lebih lama
    • Kami dapat menyesuaikan batasan untuk kasus penggunaan tertentu

”API kunci tidak valid” atau “Tidak Berwenang”

Judul Bagian “”API kunci tidak valid” atau “Tidak Berwenang””

Gejala:

  • Proses pembangunan gagal segera dengan kesalahan autentikasi
  • Kode error 401 atau 403

Pengembalian:

  1. Periksa apakah kunci API sudah benar

    Jendela terminal
    # Test with a simple command
    bunx @capgo/cli@latest app list
  2. Periksa izin API

    • __CAPGO_KEEP_0__ harus memiliki write atau all izin
    • Periksa di Capgo dashboard di bawah API Keys
  3. Pastikan API key sedang dibaca

    Jendela terminal
    # Check environment variable
    echo $CAPGO_TOKEN
    # Or check your saved credentials file
    cat ~/.capgo-credentials/credentials.json # global
    cat .capgo-credentials.json # local (--local)
  4. Re-autentikasi

    Jendela terminal
    bunx @capgo/cli@latest login

Tidak ditemukan aplikasi

Bab: Tidak ditemukan aplikasi

Gejala:

  • Autentikasi berhasil tetapi ada kesalahan aplikasi spesifik

Pengaturan: Solusi

  1. Verifikasi aplikasi telah terdaftar

    Jendela terminal
    bunx @capgo/cli@latest app list
  2. Periksa ID aplikasi sesuai

    • Verifikasi capacitor.config.json appId
    • Pastikan perintah menggunakan ID aplikasi yang benar
  3. Verifikasi akses organisasi

    • Pastikan Anda berada di organisasi yang benar
    • API harus memiliki akses ke organisasi aplikasi

Gejala:

  • Pembangunan gagal selama fase tanda tangan code
  • Xcode mengeluarkan kesalahan tentang sertifikat atau profil

Pembahasan:

  1. Verifikasi jenis sertifikat sesuai dengan jenis pembangunan

    • Builds pengembangan memerlukan sertifikat pengembangan
    • Builds App Store memerlukan sertifikat distribusi
  2. Periksa sertifikat dan profil sesuai

    Jendela terminal
    # Decode and inspect your certificate
    echo $BUILD_CERTIFICATE_BASE64 | base64 -d > cert.p12
    openssl pkcs12 -in cert.p12 -nokeys -passin pass:$P12_PASSWORD | openssl x509 -noout -subject
  3. Pastikan profil provisioningnya valid

    • Periksa tanggal kadaluarsa
    • Pastikan termasuk ID Aplikasi Anda
    • Konfirmasi termasuk sertifikat
  4. Regenerasi kunci akses

    • Hapus sertifikat/profil lama
    • Buat yang baru di portal pengembang Apple
    • Re-encode dan update variabel lingkungan

”Profil pengaturan tidak termasuk sertifikat tanda tangan”

Judul bagian “”Profil pengaturan tidak termasuk sertifikat tanda tangan””

Gejala:

  • Xcode tidak dapat menemukan sertifikat di profil

Pembahasan:

  1. Unduh profil terbaru dari Apple

    • Pergi ke Pengembang Apple → Sertifikat, ID, dan Profil
    • Unduh profil pengaturan
    • Pastikan termasuk sertifikat Anda
  2. Periksa apakah sertifikat ada di profil

    Jendela terminal
    # Extract profile
    echo $BUILD_PROVISION_PROFILE_BASE64 | base64 -d > profile.mobileprovision
    # View profile contents
    security cms -D -i profile.mobileprovision
  3. Rekreasikan profil dengan sertifikat yang benar

    • Dalam portal pengembang Apple, edit profil
    • Pastikan sertifikat distribusi Anda dipilih
    • Unduh dan re-encode

”Gagal autentikasi App Store Connect”

Judul bagian “”Gagal autentikasi App Store Connect””

Gejala:

  • Upload ke TestFlight gagal
  • Error API key

Pengaturan:

  1. Verifikasi kredensial API key

    • Periksa APPLE_KEY_ID (harus 10 karakter)
    • Periksa APPLE_ISSUER_ID (dalam format UUID)
    • Verifikasi APPLE_KEY_CONTENT telah dikodekan base64 dengan benar
  2. Test API kunci secara lokal

    Jendela terminal
    # Decode key
    echo $APPLE_KEY_CONTENT | base64 -d > AuthKey.p8
    # Test with fastlane (if installed)
    fastlane pilot list
  3. Periksa izin API kunci

    • Kunci memerlukan peran 'Developer' atau lebih tinggi
    • Verifikasi di App Store Connect → Pengguna dan Akses → Kunci
  4. Pastikan kunci tidak dicabut

    • Periksa di App Store Connect
    • Buat kunci baru jika diperlukan

Gejala:

  • Pembangunan gagal selama instalasi CocoaPods
  • Error Podfile

Solusi:

  1. Pastikan Podfile.lock telah dikomit

    Jendela terminal
    git status ios/App/Podfile.lock
  2. Test instalasi pod secara lokal

    Jendela terminal
    cd ios/App
    pod install
  3. Periksa pod yang tidak kompatibel

    • Ulangi Podfile untuk konflik versi
    • Pastikan semua pod mendukung target pengembangan iOS Anda
  4. Bersihkan cache pod

    Jendela terminal
    cd ios/App
    rm -rf Pods
    rm Podfile.lock
    pod install
    # Then commit new Podfile.lock

Gejala:

  • Pembangunan gagal selama proses penandatanganan
  • Masalah Gradle tentang keystore

Solusi:

  1. Periksa kata sandi keystore

    Jendela terminal
    # Test keystore locally
    keytool -list -keystore my-release-key.keystore
    # Enter password when prompted
  2. Periksa variabel lingkungan

    Jendela terminal
    # Ensure no extra spaces or special characters
    echo "$KEYSTORE_STORE_PASSWORD" | cat -A
    echo "$KEYSTORE_KEY_PASSWORD" | cat -A
  3. Periksa pengkodean base64

    Jendela terminal
    # Decode and test
    echo $ANDROID_KEYSTORE_FILE | base64 -d > test.keystore
    keytool -list -keystore test.keystore

Gejala:

  • Tanda tangan gagal dengan kesalahan alias

Pengembangan:

  1. Daftar alias keystore

    Jendela terminal
    keytool -list -keystore my-release-key.keystore
  2. Periksa apakah alias cocok secara tepat

    • Alias sangat sensitif terhadap huruf besar kecil
    • Periksa apakah ada kesalahan penulisan KEYSTORE_KEY_ALIAS
  3. Gunakan alias yang benar dari keystore

    Jendela terminal
    # Update environment variable to match
    export KEYSTORE_KEY_ALIAS="the-exact-alias-name"

Gejala:

  • Masalah Gradle umum
  • Masalah kompilasi atau dependensi

Pemecahan masalah:

  1. Tes bangun lokal terlebih dahulu

    Jendela terminal
    cd android
    ./gradlew clean
    ./gradlew assembleRelease
  2. Periksa keterlambatan dependensi

    • Ulas file build.gradle
    • Pastikan semua plugin terdaftar di dependencies
  3. Verifikasi versi Gradle yang kompatibel

    Jendela terminal
    # Check gradle version
    cat android/gradle/wrapper/gradle-wrapper.properties
  4. Hapus cache Gradle

    Jendela terminal
    cd android
    ./gradlew clean
    rm -rf .gradle build

Gejala:

  • Pembangunan berhasil tetapi unggahan gagal
  • Masalah akun layanan

Solutions:

  1. Verifikasi akun JSON layanan

    Jendela terminal
    # Decode and check format
    echo $PLAY_CONFIG_JSON | base64 -d | jq .
  2. Periksa izin akun layanan

    • Pergi ke Console Play → Setup → API Akses
    • Pastikan akun layanan memiliki akses ke aplikasi Anda
    • Berikan izin “Rilis ke jalur uji coba”
  3. Periksa apakah aplikasi telah terkonfigurasi di Console Play

    • Aplikasi harus dibuat terlebih dahulu di Console Play
    • Paling tidak satu APK harus diunggah secara manual awalnya
  4. Periksa API telah diaktifkan

    • Google Play Developer API harus diaktifkan
    • Periksa di Google Cloud Console

”Tidak Ditemukan” atau “Status Pembangunan Tidak Tersedia”

Judul bagian “”Tidak Ditemukan” atau “Status Pembangunan Tidak Tersedia””

Gejala:

  • Tidak dapat memeriksa status pembangunan
  • Kesalahan ID pekerjaan

Solusi:

  1. Tunggu sebentar dan ulangi

    • Pekerjaan pembangunan mungkin membutuhkan beberapa detik untuk diinisialisasi
  2. Periksa ID pekerjaan benar

    • Verifikasi ID pekerjaan dari respons pembangunan awal
  3. Periksa apakah pembangunan belum kedaluwarsa

    • Data pembangunan tersedia selama 24 jam

”Project sync failed”

Gagal Sinkronisasi Proyek

Gejala:

  • Pembangunan gagal sebelum proses kompilasi dimulai
  • Error file yang hilang

Solusi:

  1. Jalankan Capacitor sinkronisasi secara lokal

    Jendela terminal
    bunx cap sync
  2. Pastikan semua file asli dikomit

    Jendela terminal
    git status ios/ android/
  3. Periksa file native yang diignore oleh Git

    • Tinjau .gitignore
    • Pastikan file konfigurasi penting tidak diignore

”Sukses dibangun tapi saya tidak melihat hasil”

Judul bagian “”Sukses dibangun tapi saya tidak melihat hasil””

Gejala:

  • Pembangunan menunjukkan kesuksesan tapi tidak ada tautan download

Solusi:

  1. Periksa konfigurasi pembangunan

    • Penyimpanan artefak mungkin tidak dikonfigurasi
    • Hubungi dukungan jika akses artefak tidak tersedia untuk pembangunan Anda
  2. Untuk pengiriman TestFlight iOS

    • Periksa App Store Connect
    • Proses dapat memakan waktu 5-30 menit setelah unggahan
  3. Untuk Android Play Store

    • Periksa Play Console → Testing → Pengujian Internal
    • Proses dapat memakan waktu beberapa menit

Gejala:

  • bunx @capgo/cli@latest … Gagal di CI dengan “perintah tidak ditemukan”

Solusi:

  1. Tetapkan Bun terlebih dahulu jadi bunx tersedia:

    - uses: oven-sh/setup-bun@v2
  2. Lalu jalankan CLIbunx mengambilnya secara on demand, tidak perlu install global:

    - run: bunx @capgo/cli@latest build request com.example.app --platform android

Gejala:

  • Variabel lingkungan kosong dalam pembangunan

Solusi:

  1. Verifikasi rahasia telah diset

    • Pergi ke Repo Pengaturan → Rahasia dan variabel → Aksi
    • Tambahkan semua rahasia yang diperlukan
  2. Gunakan sintaks yang benar

    env:
    CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
  3. Periksa nama rahasia sesuai

    • Nama sangat sensitif terhadap huruf besar kecil
    • Tidak ada kesalahan ketik dalam referensi rahasia
Jendela Terminal
# Add debug flag (when available)
bunx @capgo/cli@latest build request com.example.app --verbose

Ketika menghubungi dukungan, termasuk:

  1. Perintah Pembangunan yang Digunakan

    Jendela Terminal
    bunx @capgo/cli@latest build request com.example.app --platform ios
  2. Pesan kesalahan (output penuh)

  3. ID pekerjaan (dari output pembangunan)

  4. Catatan pembangunan (salin output terminal penuh)

  5. Informasi lingkungan

    Jendela terminal
    node --version
    npm --version
    bunx @capgo/cli@latest --version

Keterbatasan saat ini:

  • Waktu pembangunan maksimum: 10 menit
  • Ukuran unggah maksimum: ~500MB
  • Pembangunan iOS memerlukan sewa Mac selama 24 jam, pembangunan di Mac akan diantre untuk memastikan penggunaan optimal
  • Ketersediaan download artefak pembangunan bergantung pada tujuan pembangunan dan konfigurasi penyimpanan artefak

Keterbatasan ini mungkin disesuaikan berdasarkan umpan balik.