Lompat ke konten

Opsi 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.

Setiap opsi pembangunan dapat diatur dalam beberapa cara. 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-otomatiskan.


Opsi iOS

Pilihan iOS
CLI FlagVariabel LingkunganKunci KredensialDefaultDeskripsi
--build-certificate-base64 <cert>BUILD_CERTIFICATE_BASE64BUILD_CERTIFICATE_BASE64Dikodekan dalam Base64 .p12 Sertifikat Distribusi
--build-provision-profile-base64 <profile>BUILD_PROVISION_PROFILE_BASE64BUILD_PROVISION_PROFILE_BASE64Dikodekan dalam Base64 .mobileprovision Profil Pengiriman
--build-provision-profile-base64-prod <profile>BUILD_PROVISION_PROFILE_BASE64_PRODBUILD_PROVISION_PROFILE_BASE64_PRODProfil distribusi App Store (opsional, untuk distribusi App Store)
--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_IDKunci ID API App Store Connect
--apple-issuer-id <id>APPLE_ISSUER_IDAPPLE_ISSUER_IDID Penerbit App Store Connect (UUID)
--apple-key-content <content>APPLE_KEY_CONTENTAPPLE_KEY_CONTENTKunci App Store Connect yang dikodekan dalam Base64 (API) (.p8 Nama profil pengaturan sebagai yang ditampilkan di portal Pengembang Apple
--apple-profile-name <name>APPLE_PROFILE_NAMEAPPLE_PROFILE_NAMEID Tim App Store Connect
--app-store-connect-team-id <id>APP_STORE_CONNECT_TEAM_IDAPP_STORE_CONNECT_TEAM_IDCatatan

Pengaturan Bangun iOS

Pengaturan Build iOS
CLI FlagVariabel LingkunganKunci KredensialDefaultDeskripsi
--ios-scheme <scheme>CAPGO_IOS_SCHEMECAPGO_IOS_SCHEMEAppSkema Xcode untuk membangun
--ios-target <target>CAPGO_IOS_TARGETCAPGO_IOS_TARGETAppTarget Xcode untuk membaca pengaturan build

Pilihan Android

Pengaturan Android

Pengaturan Tanda Tangan Keystore

Pengaturan Tanda Tangan Keystore
CLI FlagVariabel LingkunganKunci KredensialDefaultDeskripsi
--android-keystore-file <keystore>ANDROID_KEYSTORE_FILEANDROID_KEYSTORE_FILEFile keystore yang dikodekan 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 akun layanan Google Play yang dikodekan Base64
Variabel LingkunganDefaultDeskripsi
PLAY_STORE_TRACKinternalLacak Rilis Google Play (internal, alpha, beta, production)
PLAY_STORE_RELEASE_STATUSdraftStatus Rilis di Google Play (draft, completed)

Opsi-opsi ini berlaku untuk bangun iOS dan Android.

CLI FlagDefaultDeskripsi
--platform <platform>Diperlukan. ios atau android
--build-mode <mode>releasedebug atau release
--build-config <json>Konfigurasi JSON tambahan untuk pembangunan
--path <path>.Direktori proyek
--verbosefalseAktifkan log pembangunan verbose
CLI FlagVariabel LingkunganKunci KredensialDefaultDeskripsi
--skip-build-number-bumpSKIP_BUILD_NUMBER_BUMPSKIP_BUILD_NUMBER_BUMPfalseLepaskan otomatis pembangunan nomor / versi code meningkatkan
--no-skip-build-number-bumpAktifkan kembali otomatis meningkatkan secara eksplisit (mengatasi kembali kredential yang disimpan)

Dengan default, Capgo secara otomatis meningkatkan nomor build:

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

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

Bagian Judul “Upload Output”

__CAPGO_KEEP_0__ Flag
CLI FlagEnv VariableKunci KredensialDefaultDeskripsi
--output-uploadBUILD_OUTPUT_UPLOAD_ENABLEDBUILD_OUTPUT_UPLOAD_ENABLEDfalseUnggah hasil build (IPA/APK/AAB) ke penyimpanan Capgo. BUILD_OUTPUT_UPLOAD_ENABLED=true.
--no-output-uploadBUILD_OUTPUT_UPLOAD_ENABLEDKetika diatur melalui variabel lingkungan, gunakan BUILD_OUTPUT_UPLOAD_ENABLED=false.
--output-retention <duration>BUILD_OUTPUT_RETENTION_SECONDSBUILD_OUTPUT_RETENTION_SECONDS1hNonaktifkan unggah hasil build.

Ketika diatur melalui variabel lingkungan, gunakan Berapa lama tautan download aktif 1h, 6h, 2d, 7dFormat penyimpanan: 3600 Gunakan durasi yang dapat dibaca manusia seperti

Minimal 1 jam, maksimal 7 hari. Ketika diatur melalui variabel lingkungan, gunakan detik (misalnya

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 salinan 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>"
BUILD_PROVISION_PROFILE_BASE64="<base64-encoded .mobileprovision>"
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>"
APPLE_PROFILE_NAME="My App Distribution Profile"
APP_STORE_CONNECT_TEAM_ID="TEAM123456"
# 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"

Bandingkan dengan melewati flag atau var lingkungan setiap kali, simpan kredensial sekali:

Jendela Terminal
# Save iOS credentials
bunx @capgo/cli build credentials save \
--platform ios \
--certificate ./dist_cert.p12 \
--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-profile-name "My App Profile" \
--apple-team-id TEAM123456
# Save Android credentials
bunx @capgo/cli 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
(default)~/.capgo-credentials/credentials.jsonGlobal — 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 berbeda tanpa konflik. Kredensial setiap aplikasi kemudian dipisahkan oleh platform (ios / android).

Jendela Terminal
# List saved credentials
bunx @capgo/cli build credentials list
# Update a specific option without re-entering everything
bunx @capgo/cli build credentials update --skip-build-number-bump
# Clear saved credentials
bunx @capgo/cli 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 build request --platform ios
env:
CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
BUILD_CERTIFICATE_BASE64: ${{ secrets.IOS_CERTIFICATE }}
BUILD_PROVISION_PROFILE_BASE64: ${{ secrets.IOS_PROFILE }}
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 }}
APPLE_PROFILE_NAME: ${{ secrets.APPLE_PROFILE_NAME }}
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 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 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 build request \
--platform android \
--skip-build-number-bump \
--no-output-upload \
--apikey YOUR_API_KEY

Gabungkan kreditensi yang disimpan dengan CLI override:

Jendela Terminal
# Save base credentials once
bunx @capgo/cli build credentials save --platform ios \
--certificate ./cert.p12 \
--provisioning-profile ./profile.mobileprovision \
--output-upload
# Override specific options per-build
bunx @capgo/cli 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.