Pilihan Konfigurasi
Salin prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
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
Judul Bagian “Prioritas Konfigurasi”Setiap opsi pembangunan dapat diatur dalam beberapa cara. Ketika opsi yang sama diatur dalam beberapa tempat, sumber-sumber dengan prioritas lebih tinggi 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 kredit yang disimpan Anda memiliki SKIP_BUILD_NUMBER_BUMP=true tetapi Anda melewati --no-skip-build-number-bump pada CLI, flag CLI menang dan nomor pembangunan akan di-inkrement secara otomatis
Pilihan iOS
Judul Bagian “Pilihan iOS”Code Signing
Judul Bagian “Code Signing”| CLI Flag | Variabel Lingkungan | Kunci Kredensial | Default | Deskripsi |
|---|---|---|---|---|
--build-certificate-base64 <cert> | BUILD_CERTIFICATE_BASE64 | BUILD_CERTIFICATE_BASE64 | — | Ditulis dalam Base64 .p12 Sertifikat Distribusi |
--ios-provisioning-profile <map> | CAPGO_IOS_PROVISIONING_MAP | CAPGO_IOS_PROVISIONING_MAP | — | Profil Pengaturan sebagai path atau bundleId=path peta. Ulangi untuk aplikasi multi-target (aplikan + ekstensi); nama profil diambil secara otomatis. |
--p12-password <password> | P12_PASSWORD | P12_PASSWORD | — | Kata sandi untuk .p12 sertifikat (hilangkan jika sertifikat tidak memiliki kata sandi) |
Autentikasi App Store Connect
Bagian berjudul “Autentikasi App Store Connect”| CLI Flag | Variabel Lingkungan | Kunci Kredensial | Default | Deskripsi |
|---|---|---|---|---|
--apple-key-id <id> | APPLE_KEY_ID | APPLE_KEY_ID | — | App Store Connect API Kunci ID Sertifikat |
--apple-issuer-id <id> | APPLE_ISSUER_ID | APPLE_ISSUER_ID | — | App Store Connect ID Pengembang (UUID) |
--apple-key-content <content> | APPLE_KEY_CONTENT | APPLE_KEY_CONTENT | — | Base64-encoded App Store Connect API key (.p8 file) |
--app-store-connect-team-id <id> | APP_STORE_CONNECT_TEAM_ID | APP_STORE_CONNECT_TEAM_ID | — | ID Tim App Store Connect |
Pengaturan Pembangunan iOS
Pengaturan Build iOS| CLI Flag | Variabel Lingkungan | Kunci Kredensial | Default | Deskripsi |
|---|---|---|---|---|
--ios-scheme <scheme> | CAPGO_IOS_SCHEME | CAPGO_IOS_SCHEME | App | Skema Xcode untuk membangun |
--ios-target <target> | CAPGO_IOS_TARGET | CAPGO_IOS_TARGET | App | Target Xcode untuk membaca pengaturan build |
--ios-distribution <mode> | CAPGO_IOS_DISTRIBUTION | CAPGO_IOS_DISTRIBUTION | app_store | Mode distribusi: app_store atau ad_hoc |
Pilihan Android
Pengaturan Pilihan AndroidKeamanan Penyimpanan Kunci
Judul Bagian “Keamanan Penyimpanan Kunci”| CLI Flag | Variabel Lingkungan | Kunci Kredensial | Default | Deskripsi |
|---|---|---|---|---|
--android-keystore-file <keystore> | ANDROID_KEYSTORE_FILE | ANDROID_KEYSTORE_FILE | — | File penyimpanan kunci yang dikodekan dalam Base64 (.keystore atau .jks) |
--keystore-key-alias <alias> | KEYSTORE_KEY_ALIAS | KEYSTORE_KEY_ALIAS | key0 | Alias kunci penyimpanan kunci |
--keystore-key-password <password> | KEYSTORE_KEY_PASSWORD | KEYSTORE_KEY_PASSWORD | — | Kata sandi kunci penyimpanan kunci (jatuh kembali ke kata sandi penyimpanan jika tidak ditetapkan) |
--keystore-store-password <password> | KEYSTORE_STORE_PASSWORD | KEYSTORE_STORE_PASSWORD | — | Kata sandi penyimpanan kunci |
Konfigurasi Google Play
Judul Bagian “Konfigurasi Google Play”| CLI Flag | Sifat Lingkungan | Kunci Kredensial | Default | Pengenalan |
|---|---|---|---|---|
--play-config-json <json> | PLAY_CONFIG_JSON | PLAY_CONFIG_JSON | — | Kunci Akun Layanan Google Play yang Dikodekan Base64 |
| (hanya lingkungan) | PLAY_STORE_TRACK | — | internal | Jalur Rilis Google Play (internal, alpha, beta, production) |
| (hanya lingkungan) | PLAY_STORE_RELEASE_STATUS | — | draft | Status Rilis pada Jalur yang Dipilih (draft, completed, inProgress, halted) |
Pengaturan Build Android
Judul Bagian “Pengaturan Build Android”| CLI Flag | Default | Deskripsi |
|---|---|---|
--android-flavor <flavor> | — | Pilihan rasa produk untuk dibangun (misalnya production). Wajib jika proyek Anda mendefinisikan beberapa rasa. |
--in-app-update-priority <0–5> | — | Prioritas pembaruan dalam aplikasi Google Play untuk rilis ini (lebih tinggi = lebih mendesak). |
--no-playstore-upload | — | Bangun dan tandatangani, tetapi lewati unggah ke Toko Play (memerlukan --output-upload). |
Opsi Kontrol Build
Judul Bagian “Opsi Kontrol Build”Pilihan ini berlaku untuk pembangunan iOS dan Android.
Mod Pembangunan
Judul bagian “Mod Pembangunan”| CLI Flag | 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 kegagalan pembangunan, kirimkan log ke Capgo AI untuk diagnosis — lihat Diagnosis Pembangunan AI |
Kontrol Nomor Pembangunan
Judul Bagian “Kontrol Nomor Pembangunan”| Flag CLI | Variabel Lingkungan | Kunci Kredensial | Default | Deskripsi |
|---|---|---|---|---|
--skip-build-number-bump | SKIP_BUILD_NUMBER_BUMP | SKIP_BUILD_NUMBER_BUMP | false | Lewatkan otomatis meningkatkan nomor pembangunan / versi code |
--no-skip-build-number-bump | — | — | — | Aktifkan kembali otomatis secara eksplisit (mengatasi kredential yang disimpan) |
Dengan default, Capgo Cloud Build secara otomatis meningkatkan nomor pembangunan:
- iOS: Mengambil nomor build terbaru dari App Store Connect, menambahkan 1
- Android: Mengambil maksimum
versionCodedari Google Play, menambahkan 1
Ketika --skip-build-number-bump dipasang, build menggunakan versi yang sudah ada di file proyek Anda (projek Xcode atau build.gradle).
Upload Output
Bagian berjudul “Upload Output”| CLI Flag | Variabel Lingkungan | Kunci Kredensial | Default | Deskripsi |
|---|---|---|---|---|
--output-upload | BUILD_OUTPUT_UPLOAD_ENABLED | BUILD_OUTPUT_UPLOAD_ENABLED | false | Unggah hasil pembangunan (IPA/APK/AAB) ke penyimpanan Capgo. BUILD_OUTPUT_UPLOAD_ENABLED=true. |
--no-output-upload | BUILD_OUTPUT_UPLOAD_ENABLED | — | — | Ketika diatur melalui variabel lingkungan, gunakan BUILD_OUTPUT_UPLOAD_ENABLED=false. |
--output-retention <duration> | BUILD_OUTPUT_RETENTION_SECONDS | BUILD_OUTPUT_RETENTION_SECONDS | 1h | Mati kan unggah hasil pembangunan. |
--output-record <path> | — | — | — | After a successful build, write a JSON record (job ID, status, download URL, QR code) to <path> Berapa lama tautan download aktif build last-output. |
Sesudah pembangunan sukses, tulis catatan JSON (ID pekerjaan, status, URL download, QR __CAPGO_KEEP_0__) ke — baca kembali dengan 1h, 6h, 2d, 7dFormat penyimpanan: 3600 Pakai durasi yang dapat dibaca manusia seperti
Minimum adalah 1 jam, maksimum adalah 7 hari. Ketika diatur melalui variabel lingkungan, gunakan detik (misalnya
untuk 1 jam).| CLI Flag | Variabel Lingkungan | Default | Deskripsi |
|---|---|---|---|
-a, --apikey <key> | CAPGO_TOKEN | — | Capgo API kunci autentikasi |
--supa-host <host> | — | — | Host Supabase yang disesuaikan (hanya untuk penggunaan sendiri) |
--supa-anon <key> | — | — | Kunci anon Supabase yang disesuaikan (hanya untuk penggunaan sendiri) |
Referensi Variabel Lingkungan Cepat
Bab berjudul “Referensi Variabel Lingkungan Cepat”Siap dipotong-pisah untuk dijadikan bagian dari 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"
# Optional iOS settingsCAPGO_IOS_SCHEME="App"CAPGO_IOS_TARGET="App"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"Pengendalian Build
Bagian berjudul “Pengendalian Build”# 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
Bagian berjudul “Penyimpanan Kredensial”Simpan Kredensial Lokal
Judul Bagian “Simpan Kredensial 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 — bersamaan di semua proyek di mesin Anda |
--local | .capgo-credentials.json di root proyek | Per-proyek — menggantikan global ketika kedua ada |
Kredensial dikunci oleh ID aplikasi (misalnya com.example.myapp), sehingga file kredensial tunggal dapat menyimpan pengaturan untuk aplikasi multiple tanpa konflik. Kredensial setiap aplikasi kemudian dipisahkan oleh platform (ios / android).
Kelola Kredensial Tersimpan
Bagian Judul “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
Bagian Judul “Contoh”GitHub Aksi
Bagian Judul “GitHub Aksi”name: 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
Bagian Judul “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
Judul Bagian “Konfigurasi Campuran”Gabungkan kreditensi 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 2dKreditensi yang disimpan menyediakan detail tanda tangan sementara CLI flag mengatur perilaku pembangunan untuk langkah ini.