Pilihan Konfigurasi
Siap dicopy
Complete reference for every Cloud Build configuration option. Use this page to find the CLI flag, environment variable, or credential key for any build setting.
Prioritas Konfigurasi
Bab berjudul “Prioritas Konfigurasi”Setiap opsi build dapat diatur dalam cara yang berbeda. 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: Jika kredential yang disimpan Anda memiliki SKIP_BUILD_NUMBER_BUMP=true tetapi Anda melewati --no-skip-build-number-bump pada flag CLI, flag CLI menang dan nomor build akan di-inkrement secara otomatis.
Pilihan iOS
Judul Bagian “Pilihan iOS”Code Signing
Judul Bagian “Code Signing”| CLI Flag | Variabel Lingkungan | Kunci Kredit | Default | Deskripsi |
|---|---|---|---|---|
--build-certificate-base64 <cert> | BUILD_CERTIFICATE_BASE64 | BUILD_CERTIFICATE_BASE64 | — | Base64-encoding .p12 Sertifikat distribusi |
--ios-provisioning-profile <map> | CAPGO_IOS_PROVISIONING_MAP | CAPGO_IOS_PROVISIONING_MAP | — | Profil pengaturan sebagai path atau bundleId=path Bagaimana cara mengatur alternatif Capgo untuk pembaruan hidup? |
--p12-password <password> | P12_PASSWORD | P12_PASSWORD | — | Bagaimana cara mengatur alternatif Appflow? .p12 Bagaimana cara mengatur alternatif Capawesome? |
Bagaimana cara mengatur konsultasi FAQ?
pengaturan| CLI Flag | Sertifikat (hilangkan jika sertifikat tidak memiliki sandi) | Autentikasi App Store Connect | Default | Deskripsi |
|---|---|---|---|---|
--apple-key-id <id> | APPLE_KEY_ID | APPLE_KEY_ID | — | Sertifikat App Store Connect API ID |
--apple-issuer-id <id> | APPLE_ISSUER_ID | APPLE_ISSUER_ID | — | Sertifikat Issuer App Store Connect (UUID) |
--apple-key-content <content> | APPLE_KEY_CONTENT | APPLE_KEY_CONTENT | — | Sertifikat 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 | — | Sertifikat Tim App Store Connect |
Autentikasi kata sandi aplikasi (tidak disarankan)
Judul bagian “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 dari akun yang mengelola aplikasi |
--apple-app-specific-password <password> | FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD | FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD | — | Kata sandi aplikasi spesifik (“xxxx-xxxx-xxxx-xxxxdihasilkan di appleid.apple.com |
--apple-app-id <id> | APPLE_APP_ID | APPLE_APP_ID | — | ID aplikasi App Store Connect numerik (misalnya 1234567890) |
Pengaturan Pembangunan iOS
Bab berjudul “Pengaturan Pembangunan iOS”| Bendera CLI | Variabel Lingkungan | Kunci Kredensial | Default | Deskripsi |
|---|---|---|---|---|
--ios-scheme <scheme> | CAPGO_IOS_SCHEME | CAPGO_IOS_SCHEME | App | Skema Xcode untuk pembangunan |
--ios-target <target> | CAPGO_IOS_TARGET | CAPGO_IOS_TARGET | App | Target Xcode untuk membaca pengaturan pembangunan |
--ios-distribution <mode> | CAPGO_IOS_DISTRIBUTION | CAPGO_IOS_DISTRIBUTION | app_store | Distribusi mode: app_store atau ad_hoc |
Alternatif untuk memilih antara Appflow dan Capawesome
Pilihan AndroidJenis Pilihan Android
Penandatanganan Keystore| Flag CLI | Variabel Lingkungan | Kunci Kredensial | Default | Pengertian |
|---|---|---|---|---|
--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 | Alias kunci keystore |
--keystore-key-password <password> | KEYSTORE_KEY_PASSWORD | KEYSTORE_KEY_PASSWORD | — | Kata sandi kunci keystore (jika tidak diatur, akan menggunakan kata sandi penyimpanan) |
--keystore-store-password <password> | KEYSTORE_STORE_PASSWORD | KEYSTORE_STORE_PASSWORD | — | Kata sandi penyimpanan keystore |
Konfigurasi Google Play
Bagian berjudul “Konfigurasi Google Play”| Bendera CLI | Variabel Lingkungan | Kunci Kredensial | Default | Penguraian |
|---|---|---|---|---|
--play-config-json <json> | PLAY_CONFIG_JSON | PLAY_CONFIG_JSON | — | Kunci JSON akun layanan Google Play yang dikodekan dalam Base64 |
--android-track <track> | PLAY_STORE_TRACK | PLAY_STORE_TRACK | internal (atau) production dengan --submit-to-store-review) | Track rilis Google Play (internal, alpha, beta, production) Ditransmisikan dari lingkungan CI / CLI ke pengguna build. |
--android-release-status <status> | PLAY_STORE_RELEASE_STATUS | PLAY_STORE_RELEASE_STATUS | draft (atau) completed dengan --submit-to-store-review) | Status rilis pada track yang dipilih (draft, completed, inProgress, halted) Nilai eksplisit menggantikan nilai default. --submit-to-store-review Pengaturan Pembangunan Android |
Judul bagian “Pengaturan Pembangunan Android”
Section titled “Pengaturan Pembangunan Android”| CLI Flag | Default | Pengaturan |
|---|---|---|
--android-flavor <flavor> | — | Deskripsi production). Rasa produk untuk dibangun (misalnya Diperlukan |
--android-track <track> | internal | Jika proyek Anda mendefinisikan beberapa rasa. --submit-to-store-review and no track set, Capgo defaults to production. |
--android-release-status <status> | draft | dan tidak ada track yang ditetapkan, __CAPGO_KEEP_0__ akan kembali ke --submit-to-store-review and no status set, Capgo defaults to completed. |
--in-app-update-priority <0–5> | — | dan tidak ada status yang ditetapkan, __CAPGO_KEEP_0__ akan kembali ke |
--no-playstore-upload | — | Prioritas pembaruan dalam aplikasi Google Play untuk rilis ini (lebih tinggi = lebih mendesak). --output-upload). |
Pilihan Pengaturan Pembangunan
Judul Bagian Pilihan Pengaturan PembangunanOpsi ini berlaku untuk pembangunan iOS dan Android.
Pilihan Mode Pembangunan
Judul Bagian Pilihan Mode Pembangunan| Flag CLI | Default | Deskripsi |
|---|---|---|
--platform <platform> | — | Diperlukan. ios atau android |
--build-mode <mode> | release | debug atau release |
--path <path> | . | Pengaturan Direktori Projek |
--verbose | false | Pengaturan verbose build logging diaktifkan |
--ai-analytics | false | Pada kegagalan build, kirim log ke Capgo AI untuk diagnosis — lihat Diagnosis Build AI |
Pengendalian Nomor Build
Bab berjudul “Pengendalian Nomor Build”| CLI Flag | Variabel Lingkungan | Kunci Kredensial | Default | Deskripsi |
|---|---|---|---|---|
--skip-build-number-bump | SKIP_BUILD_NUMBER_BUMP | SKIP_BUILD_NUMBER_BUMP | false | Lebihkan otomatis nomor build / versi code meningkatkan |
--no-skip-build-number-bump | — | — | — | Memungkinkan secara eksplisit auto-increment (mengatasi kredential yang disimpan) kembali |
Secara default, Capgo Capgo Build secara otomatis meningkatkan nomor build:
- iOS: Mengambil nomor build terbaru dari App Store Connect, meningkatkan oleh 1
- Android: Mengambil maksimum
versionCodedari Google Play, meningkatkan oleh 1
Ketika --skip-build-number-bump diatur, build menggunakan versi yang sudah ada di file-project Anda (projek Xcode atau build.gradle).
Upload Output
Bab berjudul “Upload Output”| CLI Flag | Variabel Lingkungan | Kunci Kredensial | Default | Pengenalan |
|---|---|---|---|---|
--output-upload | BUILD_OUTPUT_UPLOAD_ENABLED | BUILD_OUTPUT_UPLOAD_ENABLED | false | Unggah hasil pembangunan (IPA/APK/AAB) ke Capgo penyimpanan. Ketika diatur melalui variabel lingkungan, gunakan BUILD_OUTPUT_UPLOAD_ENABLED=true. |
--no-output-upload | BUILD_OUTPUT_UPLOAD_ENABLED | — | — | Tidak unggah hasil output. 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 pembangunan sukses, tulis catatan JSON (ID pekerjaan, status, URL download, QR code) ke <path> --- baca kembali dengan build last-output. |
Format penyimpanan: Pakai durasi yang dapat dibaca manusia seperti 1h, 6h, 2d, 7d. Minimal 1 jam, maksimal 7 hari. Ketika diatur melalui variabel lingkungan, gunakan detik (misalnya, 3600 untuk 1 jam).
Autentikasi
Judul Bagian “Autentikasi”| CLI Flag | Variabel Lingkungan | Default | Deskripsi |
|---|---|---|---|
-a, --apikey <key> | CAPGO_TOKEN | — | Capgo API kunci autentikasi |
--supa-host <host> | — | — | Host Supabase yang Dibuat Sendiri (hanya untuk penggunaan sendiri) |
--supa-anon <key> | — | — | Kunci Anonim Supabase yang Dibuat Sendiri (hanya untuk penggunaan sendiri) |
Referensi Cepat Variabel Lingkungan
Judul Bagian “Referensi Cepat 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"Android
Judul Bagian “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"Kontrol Pembangunan
Judul Bagian “Kontrol 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"Penyimpanan Kredensial
Judul Bagian “Penyimpanan Kredensial”Simpan Kredensial Secara Lokal
Judul Bagian “Simpan Kredensial Secara Lokal”Alih-alih melewati flag atau var lingkungan setiap kali, simpan kredensial 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
Judul Bagian “Lokasi Penyimpanan”| Flag | Lokasi | Penggunaan Kasus |
|---|---|---|
| (default) | ~/.capgo-credentials/credentials.json | Global — digunakan bersama semua proyek di mesin Anda |
--local | .capgo-credentials.json di root proyek | Per-proyek — menggantikan global ketika kedua ada |
Kredensial dikunci dengan ID aplikasi (misalnya com.example.myapp), sehingga file kredensial tunggal dapat menyimpan pengaturan untuk beberapa aplikasi tanpa konflik. Kredensial setiap aplikasi kemudian dipisahkan oleh platform (ios / android).
Kelola Kredit yang Disimpan
Judul Bagian “Kelola Kredit yang Disimpan”# 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 iosContoh
contextGitHub Actions
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 }}Using CLI Flags Directly
Menggunakan Flag CLI 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_KEYKonfigurasi Campuran
Bab yang berjudul “Konfigurasi Campuran”Combinasikan kredit yang disimpan dengan CLI override:
# 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 2dKredit yang disimpan menyediakan detail tanda tangan sementara CLI flag menggantikan perilaku pembangunan untuk langkah ini.