Lompat ke Konten

Pilihan Konfigurasi

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: flag __CAPGO_KEEP_0__ mengalahkan variabel lingkungan, yang mengalahkan kredential lokal, yang mengalahkan kredential global

Jika kredential yang disimpan Anda memiliki tetapi Anda memasukkan SKIP_BUILD_NUMBER_BUMP=true pada flag __CAPGO_KEEP_0__, flag __CAPGO_KEEP_1__ akan menang dan nomor build akan di-inkrement secara otomatis. --no-skip-build-number-bump on the CLI, the CLI flag wins and build numbers will be auto-incremented.


CLI BenderaVariabel LingkunganKunci KredensialDefaultDeskripsi
--build-certificate-base64 <cert>BUILD_CERTIFICATE_BASE64BUILD_CERTIFICATE_BASE64Base64-encoding .p12 sertifikat distribusi
--ios-provisioning-profile <map>CAPGO_IOS_PROVISIONING_MAPCAPGO_IOS_PROVISIONING_MAPProfil pengaturan sebagai path atau bundleId=path peta. Ulangi untuk aplikasi multi-target (aplikasi + ekstensi); nama profil diambil secara otomatis.
--p12-password <password>P12_PASSWORDP12_PASSWORDKata sandi untuk .p12 sertifikat (lewatkan jika sertifikat tidak memiliki kata sandi)
CLI FlagVariabel LingkunganKunci KredensialDefaultDeskripsi
--apple-key-id <id>APPLE_KEY_IDAPPLE_KEY_IDApp Store Connect API Key ID
--apple-issuer-id <id>APPLE_ISSUER_IDAPPLE_ISSUER_IDID Kunci App Store Connect __CAPGO_KEEP_0__
--apple-key-content <content>APPLE_KEY_CONTENTAPPLE_KEY_CONTENTBase64-encoded App Store Connect API key (.p8 ID Tim App Store Connect
--app-store-connect-team-id <id>APP_STORE_CONNECT_TEAM_IDAPP_STORE_CONNECT_TEAM_IDTidak Dianjurkan
Penggunaan kata sandi aplikasi khusus (tidak dianjurkan)
CLI FlagVariabel LingkunganKunci KredensialDefaultDeskripsi
--apple-id <email>FASTLANE_USERFASTLANE_USERAlamat email ID Apple dari akun yang mengelola aplikasi
--apple-app-specific-password <password>FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORDFASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORDSandi Aplikasi (xxxx-xxxx-xxxx-xxxx) yang dihasilkan di appleid.apple.com
--apple-app-id <id>APPLE_APP_IDAPPLE_APP_IDID Aplikasi App Store Connect Nomorik (misalnya 1234567890)
CLI FlagVariabel LingkunganKunci KredensialDefaultDeskripsi
--ios-scheme <scheme>CAPGO_IOS_SCHEMECAPGO_IOS_SCHEMEAppSkenario Xcode untuk membangun
--ios-target <target>CAPGO_IOS_TARGETCAPGO_IOS_TARGETAppSasaran Xcode untuk membaca pengaturan pembangunan
--ios-distribution <mode>CAPGO_IOS_DISTRIBUTIONCAPGO_IOS_DISTRIBUTIONapp_storeMode distribusi: app_store atau ad_hoc

CLI FlagVariabel LingkunganKunci KredensialDefaultDeskripsi
--android-keystore-file <keystore>ANDROID_KEYSTORE_FILEANDROID_KEYSTORE_FILEFile keystore yang dikodekan dalam Base64 (.keystore atau .jks)
--keystore-key-alias <alias>KEYSTORE_KEY_ALIASKEYSTORE_KEY_ALIASkey0Alias kunci keystore
--keystore-key-password <password>KEYSTORE_KEY_PASSWORDKEYSTORE_KEY_PASSWORDKata sandi kunci keystore (jatuh kembali ke kata sandi penyimpanan jika tidak ditentukan)
--keystore-store-password <password>KEYSTORE_STORE_PASSWORDKEYSTORE_STORE_PASSWORDKata sandi penyimpanan keystore
CLI FlagVariabel LingkunganKunci KredensialDefaultDeskripsi
--play-config-json <json>PLAY_CONFIG_JSONPLAY_CONFIG_JSONKunci JSON layanan Google Play yang dikodekan dalam Base64
(hanya lingkungan)PLAY_STORE_TRACKinternalRilis track Google Play (internal, alpha, beta, production)
(hanya lingkungan)PLAY_STORE_RELEASE_STATUSdraftStatus rilis pada track yang dipilih (draft, completed, inProgress, halted)
CLI FlagDefaultDeskripsi
--android-flavor <flavor>Flavor 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-uploadBuat dan tandatangani, tetapi lewati unggahan ke Toko Play (memerlukan --output-upload).

Opsi-opsi ini berlaku untuk baik build iOS maupun Android.

CLI FlagDefaultDeskripsi
--platform <platform>Diperlukan. ios atau android
--build-mode <mode>releasedebug atau release
--path <path>.Direktori Proyek
--verbosefalseAktifkan pencatatan build verbose
--ai-analyticsfalsePada gagal build, kirim log ke Capgo AI untuk diagnosis — lihat Diagnosis Build AI
Flag CLIVariabel LingkunganKunci KredensialDefaultDeskripsi
--skip-build-number-bumpSKIP_BUILD_NUMBER_BUMPSKIP_BUILD_NUMBER_BUMPfalseLewatkan peningkatan otomatis nomor build / versi code
--no-skip-build-number-bumpMengaktifkan kembali secara eksplisit peningkatan otomatis (mengatasi kredit yang disimpan)

Oleh default, Capgo Cloud Build secara otomatis meningkatkan nomor pembangunan:

  • iOS: Mengambil nomor pembangunan terbaru dari App Store Connect, meningkatkan oleh 1
  • Android: Mengambil maksimum versionCode dari Google Play, meningkatkan oleh 1

Ketika --skip-build-number-bump diatur, pembangunan menggunakan versi yang sudah ada di file-file proyek Anda (Xcode project atau build.gradle).

CLI FlagVariabel LingkunganKunci KredensialDefaultDeskripsi
--output-uploadBUILD_OUTPUT_UPLOAD_ENABLEDBUILD_OUTPUT_UPLOAD_ENABLEDfalseUnggah hasil build (IPA/APK/AAB) ke Capgo penyimpanan. Ketika diatur melalui variabel lingkungan, gunakan BUILD_OUTPUT_UPLOAD_ENABLED=true.
--no-output-uploadBUILD_OUTPUT_UPLOAD_ENABLEDNonaktifkan unggah hasil build. Ketika diatur melalui variabel lingkungan, gunakan BUILD_OUTPUT_UPLOAD_ENABLED=false.
--output-retention <duration>BUILD_OUTPUT_RETENTION_SECONDSBUILD_OUTPUT_RETENTION_SECONDS1hBerapa 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 penyimpanan: Gunakan durasi yang dapat dibaca manusia seperti 1h, 6h, 2d, 7d. Minimal 1 jam, maksimal 7 hari. Ketika diatur melalui variabel lingkungan, gunakan detik (misal, 3600 untuk 1 jam).

CLI FlagVariabel LingkunganDefaultDeskripsi
-a, --apikey <key>CAPGO_TOKENCapgo API kunci autentikasi
--supa-host <host>Host Supabase kustom (hanya self-hosting)
--supa-anon <key>Kunci anon Supabase kustom (hanya self-hosting)

Siap digunakan untuk pipeline CI/CD Anda. Semua variabel adalah opsional — hanya atur apa yang Anda butuhkan.

Jendela terminal
# 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 settings
CAPGO_IOS_SCHEME="App"
CAPGO_IOS_TARGET="App"
Jendela terminal
# 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 settings
PLAY_STORE_TRACK="internal"
PLAY_STORE_RELEASE_STATUS="draft"
Jendela terminal
# Build behavior
SKIP_BUILD_NUMBER_BUMP="true" # Skip auto-increment
BUILD_OUTPUT_UPLOAD_ENABLED="true" # Upload IPA/APK/AAB
BUILD_OUTPUT_RETENTION_SECONDS="3600" # 1 hour download link
# Authentication
CAPGO_TOKEN="your-api-key"

Alih-alih melewati flag atau var lingkungan setiap kali, simpan kredensial sekali:

Jendela terminal
# Save iOS credentials
bunx @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 credentials
bunx @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.json
FlagLokasiPenggunaan Kasus
(default)~/.capgo-credentials/credentials.jsonGlobal — digunakan secara bersamaan di semua proyek di mesin Anda
--local.capgo-credentials.json di root proyekPer-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).

Jendela Terminal
# List saved credentials
bunx @capgo/cli@latest build credentials list
# Update a specific option without re-entering everything
bunx @capgo/cli@latest build credentials update --skip-build-number-bump
# Clear saved credentials
bunx @capgo/cli@latest build credentials clear --platform ios

name: Build and Submit
on:
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 }}
Jendela Terminal
# Build iOS with all options inline
bunx @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 upload
bunx @capgo/cli@latest build request \
--platform android \
--skip-build-number-bump \
--no-output-upload \
--apikey YOUR_API_KEY

Gabungkan kredit penyimpanan dengan pengaturan CLI yang di atas:

Jendela Terminal
# Save base credentials once
bunx @capgo/cli@latest build credentials save --platform ios \
--certificate ./cert.p12 \
--ios-provisioning-profile ./profile.mobileprovision \
--output-upload
# Override specific options per-build
bunx @capgo/cli@latest build request --platform ios \
--skip-build-number-bump \
--output-retention 2d

Kredit penyimpanan menyediakan detail tanda tangan sementara flag-flag CLI mengatur perilaku pembangunan untuk langkah ini.