Pilihan Konfigurasi
Salin prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
Referensi lengkap untuk setiap opsi pengaturan Build Cloud. Gunakan halaman ini untuk menemukan flag CLI, variabel lingkungan, atau kunci kredential untuk setiap pengaturan build.
Prioritas Pengaturan
Bab berjudul “Prioritas Pengaturan”Setiap opsi build dapat diatur dalam beberapa cara. Ketika opsi yang sama diatur dalam beberapa tempat, sumber yang lebih tinggi prioritas menang:
flowchart LR
A["🔧 CLI Flag"] -->|overrides| B["🌍 Environment Variable"]
B -->|overrides| C["📁 Local Credentials"]
C -->|overrides| D["🏠 Global Credentials"]
style A fill:#6366f1,color:#fff,stroke:#4f46e5
style B fill:#8b5cf6,color:#fff,stroke:#7c3aed
style C fill:#a78bfa,color:#fff,stroke:#8b5cf6
style D fill:#c4b5fd,color:#1e1b4b,stroke:#a78bfa
Contoh: If Anda menyimpan kredit Anda memiliki SKIP_BUILD_NUMBER_BUMP=true Tapi Anda melewati --no-skip-build-number-bump pada CLI, flag CLI menang dan nomor pembangunan akan di-otomatisasi.
Pilihan iOS
Bab yang berjudul “Pilihan iOS”Code Signing
Bab yang berjudul “Code Signing”| CLI Pilihan Flag | Variabel Lingkungan | Kunci Kredensial | Default | Deskripsi |
|---|---|---|---|---|
--build-certificate-base64 <cert> | BUILD_CERTIFICATE_BASE64 | BUILD_CERTIFICATE_BASE64 | — | Base64-encoded .p12 Sertifikat Distribusi |
--ios-provisioning-profile <map> | CAPGO_IOS_PROVISIONING_MAP | CAPGO_IOS_PROVISIONING_MAP | — | Profil Pengaturan sebagai path atau bundleId=path peta pengaturan. Ulangi untuk aplikasi multi-target (aplikasi + ekstensi); nama profil diekstrak secara otomatis. |
--p12-password <password> | P12_PASSWORD | P12_PASSWORD | — | Password for the .p12 sertifikat (hilangkan jika sertifikat tidak memiliki sandi) |
Autentikasi App Store Connect
Judul Bagian berjudul “Autentikasi App Store Connect”| CLI Bendera | Variabel Lingkungan | Kunci Kredensial | Default | Pengenalan |
|---|---|---|---|---|
--apple-key-id <id> | APPLE_KEY_ID | APPLE_KEY_ID | — | ID Kunci App Store Connect API |
--apple-issuer-id <id> | APPLE_ISSUER_ID | APPLE_ISSUER_ID | — | ID Pengemis App Store Connect (UUID) |
--apple-key-content <content> | APPLE_KEY_CONTENT | APPLE_KEY_CONTENT | — | Kunci App Store Connect API yang dikodekan dalam Base64 (.p8 file) |
--app-store-connect-team-id <id> | APP_STORE_CONNECT_TEAM_ID | APP_STORE_CONNECT_TEAM_ID | — | ID Tim App Store Connect |
Autentikasi kata sandi aplikasi (tidak disarankan)
Bab berjudul “Autentikasi kata sandi aplikasi (tidak disarankan)”| CLI Flag | Variabel Lingkungan | Kunci Kredensial | Default | Deskripsi |
|---|---|---|---|---|
--apple-id <email> | FASTLANE_USER | FASTLANE_USER | — | Alamat email ID Apple yang mengakuisisi aplikasi |
--apple-app-specific-password <password> | FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD | FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD | — | Kata sandi aplikasi (xxxx-xxxx-xxxx-xxxx) yang dihasilkan di appleid.apple.com |
--apple-app-id <id> | APPLE_APP_ID | APPLE_APP_ID | — | ID aplikasi numerik App Store Connect (misalnya 1234567890) |
Pengaturan Pembangunan iOS
Bab berjudul “Pengaturan Pembangunan iOS”| Flag CLI | Variabel Lingkungan | Kunci Kredensial | Default | Deskripsi |
|---|---|---|---|---|
--ios-scheme <scheme> | CAPGO_IOS_SCHEME | CAPGO_IOS_SCHEME | App | Skenario Xcode untuk membangun |
--ios-target <target> | CAPGO_IOS_TARGET | CAPGO_IOS_TARGET | App | Sasaran Xcode untuk membaca pengaturan pembangunan |
--ios-distribution <mode> | CAPGO_IOS_DISTRIBUTION | CAPGO_IOS_DISTRIBUTION | app_store | Mode distribusi: app_store atau ad_hoc |
--xcode-version <version> | CAPGO_IOS_XCODE_VERSION | CAPGO_IOS_XCODE_VERSION | apapun | Dibangun dengan versi Xcode ini, misalnya. 26, 26.0.1 atau 27Versi utama dapat menerima versi kecil apa saja. Pembangunan gagal dengan cepat dan menampilkan versi yang tersedia ketika tidak ada yang cocok. |
Xcode 27
Judul bagian berjudul “Xcode 27”Bangun dengan Xcode 27 (iOS 27 SDK) dengan --xcode-version 27:
npx @capgo/cli@latest build request --platform ios --xcode-version 27Applikasi yang dibangun dengan iOS 27 SDK harus menerapkan siklus kehidupan UIScene: tanpa UIApplicationSceneManifest di Info.plist dan delegasi scene, iOS 27 menghentikan aplikasi pada saat peluncuran. Capgo menghalangi pembangunan ini sebelumnya (pemeriksaan sebelum pembangunan) ios/plist-scene-lifecycle-xcode27Tambahkan SceneDelegate dan UIApplicationSceneManifest ke ios/App/App/Info.plistatau teruslah membangun dengan --xcode-version 26 hingga Anda melakukannya. Lihat Apple’s Petunjuk Siklus Scene.
Kabar Penutupan CocoaPods (Desember 2026)
Judul Bagian “Kabar Penutupan CocoaPods (Desember 2026)”Capgo Pembangunan Berhenti Membangun Projek iOS yang Menggunakan CocoaPods pada Desember 2026. Migrasikan Projek Anda ke Swift Package Manager sebelum itu: lihatlah Capacitor Panduan SPM . Sampai saat itu, pembangunan CocoaPods tetap berfungsi; CLI mencetak peringatan dan Capgo mengirimkan surel pengingat kepada administrator organisasi Anda.
Pilihan Android
Judul Bagian “Pilihan Android”Pengaturan Tanda Tangan Keamanan
Judul Bagian “Pengaturan Tanda Tangan Keamanan”| CLI Flag | Variabel Lingkungan | Kunci Kredensial | Default | Deskripsi |
|---|---|---|---|---|
--android-keystore-file <keystore> | ANDROID_KEYSTORE_FILE | ANDROID_KEYSTORE_FILE | — | File keystore yang dikodekan dalam Base64 (.keystore atau .jks) |
--keystore-key-alias <alias> | KEYSTORE_KEY_ALIAS | KEYSTORE_KEY_ALIAS | key0 | Kunci alias keystore |
--keystore-key-password <password> | KEYSTORE_KEY_PASSWORD | KEYSTORE_KEY_PASSWORD | — | Kunci sandi keystore (jika tidak diatur, akan menggunakan sandi toko) |
--keystore-store-password <password> | KEYSTORE_STORE_PASSWORD | KEYSTORE_STORE_PASSWORD | — | Sandi toko keystore |
Konfigurasi Google Play
Bab yang berjudul “Konfigurasi Google Play”| Flag CLI | Variabel Lingkungan | Kunci Kredensial | Default | Deskripsi |
|---|---|---|---|---|
--play-config-json <json> | PLAY_CONFIG_JSON | PLAY_CONFIG_JSON | — | Kunci JSON layanan Google Play yang dikodekan dalam Base64 |
--android-track <track> | PLAY_STORE_TRACK | PLAY_STORE_TRACK | internal (atau production context --submit-to-store-review) | Google Play rilis track (internal, alpha, beta, productionDiteruskan dari lingkungan CI / CLI ke dalam penggunaan pembangun. |
--android-release-status <status> | PLAY_STORE_RELEASE_STATUS | PLAY_STORE_RELEASE_STATUS | draft (atau completed context --submit-to-store-review) | Kunci layanan Google Play yang dikodekan dalam Base64draft, completed, inProgress, haltedNilai eksplisit menggantikan nilai default. --submit-to-store-review Indonesia. |
Pengaturan Pembangunan Android
Judul Bagian “Pengaturan Pembangunan Android”| CLI Flag | Default | Deskripsi |
|---|---|---|
--android-flavor <flavor> | — | Rasa produk untuk dibangun (misalnya. production). Diperlukan Jika proyek Anda mendefinisikan beberapa rasa. |
--android-track <track> | internal | Track Google Play untuk unggahan ini. Dengan --submit-to-store-review and no track set, Capgo defaults to production. |
--android-release-status <status> | draft | Status rilis Google Play. Dengan --submit-to-store-review and no status set, Capgo defaults to completed. |
--in-app-update-priority <0–5> | — | Prioritas pembaruan aplikasi dalam Google Play untuk rilis ini (lebih tinggi = lebih mendesak). |
--no-playstore-upload | — | Membangun dan menandatangani, tetapi lewati unggah ke Toko Play (memerlukan --output-upload). |
Opsi Kontrol Pembangunan
Bagian berjudul “Opsi Kontrol Pembangunan”Opsi ini berlaku untuk pembangunan baik iOS maupun Android.
Mode Pembangunan
Bagian berjudul “Mode Pembangunan”| CLI Bendera | Default | Deskripsi |
|---|---|---|
--platform <platform> | — | Diperlukan. ios atau android |
--build-mode <mode> | release | debug atau release |
--path <path> | . | Direktori Proyek |
--verbose | false | Aktifkan log pembangunan yang rinci |
--ai-analytics | false | Pada gagal pembangunan, kirim log ke Capgo AI untuk diagnosis — lihat Diagnosis Pembangunan AI |
Pengendalian Nomor Pembangunan
Judul bagian berjudul “Pengendalian Nomor Pembangunan”| CLI Pilihan Flag | Variabel Lingkungan | Kunci Kredensial | Default | Deskripsi |
|---|---|---|---|---|
--skip-build-number-bump | SKIP_BUILD_NUMBER_BUMP | SKIP_BUILD_NUMBER_BUMP | false | Melewatkan peningkatan nomor / versi otomatis code |
--no-skip-build-number-bump | — | — | — | Mengaktifkan kembali otomatis secara eksplisit (mengalahkan kredit yang disimpan) |
Dengan default, Capgo Cloud Build secara otomatis meningkatkan nomor build:
- iOS: Mengambil nomor build terbaru dari App Store Connect, meningkatkan oleh 1
- Android: Mengambil maksimum
versionCodefrom Google Play, meningkatkan oleh 1
Ketika --skip-build-number-bump digunakan, build menggunakan versi yang sudah ada di file-project Anda (Xcode project atau build.gradle).
Upload Output
Judul Bagian berjudul “Upload Keluaran”| CLI Flag | Variabel Lingkungan | Kunci Kredensial | Default | Deskripsi |
|---|---|---|---|---|
--output-upload | BUILD_OUTPUT_UPLOAD_ENABLED | BUILD_OUTPUT_UPLOAD_ENABLED | false | Upload keluaran build (IPA/APK/AAB) ke Capgo penyimpanan. Ketika diatur melalui variabel lingkungan, gunakan BUILD_OUTPUT_UPLOAD_ENABLED=true. |
--no-output-upload | BUILD_OUTPUT_UPLOAD_ENABLED | — | — | Matikan unggah hasil. Ketika diatur melalui variabel lingkungan, gunakan BUILD_OUTPUT_UPLOAD_ENABLED=false. |
--output-retention <duration> | BUILD_OUTPUT_RETENTION_SECONDS | BUILD_OUTPUT_RETENTION_SECONDS | 1h | Berapa lama tautan download aktif |
--output-record <path> | — | — | — | Setelah build sukses, tulis rekaman JSON (ID pekerjaan, status, URL download, QR code) ke <path> Baca kembali dengan build last-output. |
Format Retensi: Waktu yang dapat dibaca seperti 1h, 6h, 2d, 7dMaksimum 7 hari, minimum 1 jam. Ketika diatur melalui variabel lingkungan, gunakan detik (misalnya, __CAPGO_KEEP_0__). 3600 untuk 1 jam).
Cache Pembangunan
Judul bagian “Cache Pembangunan”Capgo menyimpan artefak native yang dikompilasi (CocoaPods, Gradle, dan hasil pembangunan terkait) per aplikasi sehingga pembangunan ulang dimulai lebih cepat. Cache Pembangunan diaktifkan secara default untuk setiap aplikasi.
| CLI Pilihan Flag | Bidang API | Default | Deskripsi |
|---|---|---|---|
--no-cache | cache_enabled: false | cache on | Tidak aktifkan cache untuk build ini: lewati restore dan jangan menyimpan entri baru |
--cache-key <value> | cache_key | (lewatkan) | Bagi cache menjadi bagian-bagian (misalnya prod, stagingOmit untuk satu cache umum per aplikasi |
Samaan dengan CLI: build request menerima --no-cache dan --cache-key.
Contoh CLI:
# Default: restore/save the shared per-app cachebunx @capgo/cli@latest build request com.example.app --platform android
# Separate caches per environmentbunx @capgo/cli@latest build request com.example.app --platform android \ --cache-key=prod
bunx @capgo/cli@latest build request com.example.app --platform android \ --cache-key=staging \ --android-flavor staging
# One-off clean build (no restore, no save)bunx @capgo/cli@latest build request com.example.app --platform ios --no-cacheAPI / payload webhook (ketika integrasi Anda memanggil Capgo Build secara langsung):
{ "platform": "android", "cache_key": "prod"}Omit cache_key untuk cache umum umum. Atur cache_key untuk membagi berdasarkan lingkungan. Atur "cache_enabled": false untuk menonaktifkan cache untuk permintaan tunggal (sama seperti) --no-cache).
Jika sebuah build terlihat sukses tetapi artifact salah — atau AAB Android hilang setelah berganti RC vs produksi — cobalah kunci cache khusus atau build satu-satunya --no-cache Lihat Pengaturan: memulihkan cache salah.
Autentikasi
Judul bagian “Autentikasi”| Flag CLI | Variabel Lingkungan | Default | Deskripsi |
|---|---|---|---|
-a, --apikey <key> | CAPGO_TOKEN | — | Capgo API untuk autentikasi |
--supa-host <host> | — | — | Host Supabase kustom (hanya untuk penggunaan sendiri) |
--supa-anon <key> | — | — | Kunci anonim Supabase kustom (hanya untuk penggunaan sendiri) |
Referensi Variabel Lingkungan
Judul Bagian “Referensi Variabel Lingkungan”Siap digunakan untuk pipeline CI/CD Anda. Semua variabel adalah opsional — hanya atur apa yang Anda butuhkan.
# Code signing (required for iOS builds)BUILD_CERTIFICATE_BASE64="<base64-encoded .p12>"CAPGO_IOS_PROVISIONING_MAP="<provisioning map generated by the CLI>"P12_PASSWORD="<certificate password>"
# App Store Connect (required for store submission)APPLE_KEY_ID="ABC1234567"APPLE_ISSUER_ID="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"APPLE_KEY_CONTENT="<base64-encoded .p8 key>"APP_STORE_CONNECT_TEAM_ID="TEAM123456"
# Alternative to the App Store Connect API key above: Apple ID + app-specific# password (e.g. when migrating from Ionic Appflow). All three are required.# FASTLANE_USER="apple-id@example.com"# FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD="xxxx-xxxx-xxxx-xxxx"# APPLE_APP_ID="1234567890"
# Optional iOS settingsCAPGO_IOS_SCHEME="App"CAPGO_IOS_TARGET="App"CAPGO_IOS_XCODE_VERSION="27"Android
Bagian berjudul “Android”# Keystore signing (required for Android builds)ANDROID_KEYSTORE_FILE="<base64-encoded .keystore>"KEYSTORE_KEY_ALIAS="my-key-alias"KEYSTORE_KEY_PASSWORD="<key password>"KEYSTORE_STORE_PASSWORD="<store password>"
# Google Play (required for store submission)PLAY_CONFIG_JSON="<base64-encoded service account JSON>"
# Optional Android settingsPLAY_STORE_TRACK="internal"PLAY_STORE_RELEASE_STATUS="draft"Salin ke clipboard
Konfigurasi Pembangunan# Build behaviorSKIP_BUILD_NUMBER_BUMP="true" # Skip auto-incrementBUILD_OUTPUT_UPLOAD_ENABLED="true" # Upload IPA/APK/AABBUILD_OUTPUT_RETENTION_SECONDS="3600" # 1 hour download link
# AuthenticationCAPGO_TOKEN="your-api-key"Judul Bagian: Konfigurasi Pembangunan
Section titled “Credential Storage”Judul Bagian: Penyimpanan Kredensial
Simpan Kredensial Secara LokalAlih-alih melewati flag atau var lingkungan setiap kali, simpan kreditensi sekali:
# Save iOS credentialsbunx @capgo/cli@latest build credentials save \ --platform ios \ --certificate ./dist_cert.p12 \ --ios-provisioning-profile ./profile.mobileprovision \ --p12-password "cert-password" \ --apple-key ./AuthKey.p8 \ --apple-key-id ABC1234567 \ --apple-issuer-id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \ --apple-team-id TEAM123456
# Save Android credentialsbunx @capgo/cli@latest build credentials save \ --platform android \ --keystore ./release.keystore \ --keystore-alias my-key \ --keystore-key-password "key-pass" \ --keystore-store-password "store-pass" \ --play-config ./play-service-account.jsonLokasi Penyimpanan
Section titled “Storage Locations”| Bendera | Lokasi | Penggunaan Kasus |
|---|---|---|
| (default) | ~/.capgo-credentials/credentials.json | Global — digunakan secara bersamaan di semua proyek di mesin Anda |
--local | .capgo-credentials.json di root proyek | Per-proyek — menggantikan global ketika kedua ada |
Kredensial dikunci dengan ID aplikasi contoh com.example.myapp, sehingga file kredit tunggal dapat menyimpan pengaturan untuk beberapa aplikasi tanpa konflik. Kredit setiap aplikasi kemudian dipisahkan oleh platform (ios / android).
Pengelola Kredit Tersimpan
Judul bagian berjudul “Pengelola Kredit Tersimpan”# List saved credentialsbunx @capgo/cli@latest build credentials list
# Update a specific option without re-entering everythingbunx @capgo/cli@latest build credentials update --skip-build-number-bump
# Clear saved credentialsbunx @capgo/cli@latest build credentials clear --platform iosExamples
Judul Bagian: ContohGitHub Aksi
Judul Bagian: GitHub Aksiname: Build and Submiton: push: branches: [main]
jobs: build-ios: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - uses: oven-sh/setup-bun@v2 - run: bun install - run: bunx cap sync ios - run: bunx @capgo/cli@latest build request --platform ios env: CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }} BUILD_CERTIFICATE_BASE64: ${{ secrets.IOS_CERTIFICATE }} CAPGO_IOS_PROVISIONING_MAP: ${{ secrets.CAPGO_IOS_PROVISIONING_MAP }} P12_PASSWORD: ${{ secrets.P12_PASSWORD }} APPLE_KEY_ID: ${{ secrets.APPLE_KEY_ID }} APPLE_ISSUER_ID: ${{ secrets.APPLE_ISSUER_ID }} APPLE_KEY_CONTENT: ${{ secrets.APPLE_KEY_CONTENT }} APP_STORE_CONNECT_TEAM_ID: ${{ secrets.APP_STORE_CONNECT_TEAM_ID }}
build-android: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - uses: oven-sh/setup-bun@v2 - run: bun install - run: bunx cap sync android - run: bunx @capgo/cli@latest build request --platform android env: CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }} ANDROID_KEYSTORE_FILE: ${{ secrets.ANDROID_KEYSTORE }} KEYSTORE_KEY_ALIAS: ${{ secrets.KEYSTORE_ALIAS }} KEYSTORE_KEY_PASSWORD: ${{ secrets.KEYSTORE_KEY_PASSWORD }} KEYSTORE_STORE_PASSWORD: ${{ secrets.KEYSTORE_STORE_PASSWORD }} PLAY_CONFIG_JSON: ${{ secrets.PLAY_CONFIG_JSON }}Menggunakan Flag CLI Langsung
Menggunakan CLI Flag Langsung# Build iOS with all options inlinebunx @capgo/cli@latest build request \ --platform ios \ --build-mode release \ --skip-build-number-bump \ --output-retention 6h \ --apikey YOUR_API_KEY
# Build Android, skip version bump, no output uploadbunx @capgo/cli@latest build request \ --platform android \ --skip-build-number-bump \ --no-output-upload \ --apikey YOUR_API_KEYJendela Terminal
Section titled “Mixed Configuration”Gabungkan kreditensi yang disimpan dengan CLI pengaturan pengganti:
# Save base credentials oncebunx @capgo/cli@latest build credentials save --platform ios \ --certificate ./cert.p12 \ --ios-provisioning-profile ./profile.mobileprovision \ --output-upload
# Override specific options per-buildbunx @capgo/cli@latest build request --platform ios \ --skip-build-number-bump \ --output-retention 2dKredensial yang disimpan menyediakan detail tanda tangan sementara CLI mematikan perilaku build untuk langkah ini.