Lompat ke Konten

Opsi Konfigurasi

Referensi lengkap untuk setiap opsi konfigurasi Cloud Build. Gunakan halaman ini untuk menemukan flag CLI, variabel lingkungan, atau kunci kredential untuk setiap pengaturan bangun.

Setiap opsi bangun dapat diatur dalam cara yang berbeda. Ketika opsi yang sama diatur dalam beberapa tempat, sumber yang lebih tinggi prioritas menang:

Contoh: Jika kredit yang disimpan Anda memiliki SKIP_BUILD_NUMBER_BUMP=true tetapi Anda memasukkan --no-skip-build-number-bump pada CLI, flag CLI menang dan nomor pembangunan akan di-otomatisasi.


CLI FlagSementara LingkunganKunci KredensialDefaultDeskripsi
--build-certificate-base64 <cert>BUILD_CERTIFICATE_BASE64BUILD_CERTIFICATE_BASE64Base64-encoded .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 diekstrak secara otomatis.
--p12-password <password>P12_PASSWORDP12_PASSWORDKata Sandi untuk .p12 Sertifikat (hilangkan jika sertifikat tidak memiliki kata sandi)
CLI FlagVariabel LingkunganKunci KredensialDefaultDeskripsi
--apple-key-id <id>APPLE_KEY_IDAPPLE_KEY_IDApp Store Connect API ID Kunci
--apple-issuer-id <id>APPLE_ISSUER_IDAPPLE_ISSUER_IDApp Store Connect ID Pengemudian (UUID)
--apple-key-content <content>APPLE_KEY_CONTENTAPPLE_KEY_CONTENTBase64-encoding App Store Connect API kunci (.p8 file)
--app-store-connect-team-id <id>APP_STORE_CONNECT_TEAM_IDAPP_STORE_CONNECT_TEAM_IDID Tim App Store Connect
Bab berjudul “Penggunaan kata sandi aplikasi (tidak disarankan)”
Bendera CLIVariabel 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_PASSWORDKata sandi aplikasi (xxxx-xxxx-xxxx-xxxx) yang dihasilkan di appleid.apple.com
--apple-app-id <id>APPLE_APP_IDAPPLE_APP_IDID aplikasi App Store Connect numerik (misalnya 1234567890)
CLI FlagVariabel LingkunganKunci KredensialDefaultDeskripsi
--ios-scheme <scheme>CAPGO_IOS_SCHEMECAPGO_IOS_SCHEMEAppSkenario Xcode untuk membangun
--ios-target <target>CAPGO_IOS_TARGETCAPGO_IOS_TARGETAppTarget Xcode untuk membaca pengaturan pembangunan
--ios-distribution <mode>CAPGO_IOS_DISTRIBUTIONCAPGO_IOS_DISTRIBUTIONapp_storeModus Distribusi: app_store atau ad_hoc

CLI FlagSiaran 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

Konfigurasi Google Play

Konfigurasi Google Play
CLI FlagVariabel LingkunganKunci KredensialDefaultDeskripsi
--play-config-json <json>PLAY_CONFIG_JSONPLAY_CONFIG_JSONKunci Akun Layanan Google Play yang dikodekan dalam Base64
(hanya lingkungan)PLAY_STORE_TRACKinternalJalur Rilis Google Play (internal, alpha, beta, production)
(hanya lingkungan)PLAY_STORE_RELEASE_STATUSdraftStatus Rilis pada Jalur yang Dipilih (draft, completed, inProgress, halted)
CLI FlagDefaultDeskripsi
--android-flavor <flavor>Rasa produk untuk dibangun (misalnya production). Diperlukan 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-uploadBangun dan tandatangani, tetapi lewati unggah ke Toko Play (memerlukan --output-upload).

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

CLI FlagDefaultPengenalan
--platform <platform>Diperlukan. ios atau android
--build-mode <mode>releasedebug atau release
--path <path>.Direktori Proyek
--verbosefalseAktifkan logging pembangunan yang rinci
--ai-analyticsfalsePada kegagalan pembangunan, kirim log ke Capgo AI untuk diagnosis — lihat Diagnosis Pembangunan AI
CLI FlagSiaran Variabel LingkunganKunci KredensialDefaultPengenalan
--skip-build-number-bumpSKIP_BUILD_NUMBER_BUMPSKIP_BUILD_NUMBER_BUMPfalseLebihkan secara otomatis nomor pembangunan / versi code
--no-skip-build-number-bumpNonaktifkan secara eksplisit auto-increment (mengalahkan kredit yang disimpan)

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

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

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

CLI FlagVariabel LingkunganKunci KredensialDefaultDeskripsi
--output-uploadBUILD_OUTPUT_UPLOAD_ENABLEDBUILD_OUTPUT_UPLOAD_ENABLEDfalseMuat output pembangunan (IPA/APK/AAB) ke Capgo penyimpanan. Ketika diatur melalui variabel lingkungan, gunakan BUILD_OUTPUT_UPLOAD_ENABLED=true.
--no-output-uploadBUILD_OUTPUT_UPLOAD_ENABLEDMatikan unggah output. 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 pembangunan 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. Minimum 1 jam, maksimum 7 hari. Ketika diatur melalui variabel lingkungan, gunakan detik (misalnya 3600 untuk 1 jam).

CLI FlagVariabel LingkunganDefaultDeskripsi
-a, --apikey <key>CAPGO_TOKENCapgo 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)

Siapkan untuk dipasang di pipeline CI/CD Anda. Semua variabel adalah opsional — hanya atur apa yang Anda butuhkan.

Tampilan 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"

Simpan Kredensial secara Lokal

Bagian berjudul “Simpan Kredensial Lokal”

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 — bersamaan di semua proyek di mesin Anda
--local.capgo-credentials.json di root proyekPer-proyek — mengalahkan global ketika kedua ada

Kredensial dikunci oleh ID aplikasi (misalnya com.example.myapp), sehingga file kredensial tunggal dapat menyimpan pengaturan untuk aplikasi berbeda tanpa konflik. Kredensial setiap aplikasi lebih lanjut 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 kreditensi yang disimpan dengan CLI pengaturan pengganti:

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

Kreditensi yang disimpan menyediakan detail tanda tangan sementara CLI flag mengatur perilaku pembangunan untuk langkah ini.