Vai alla pagina iniziale

Opzioni di configurazione

Riferimento completo per ogni opzione di configurazione di Cloud Build. Utilizza questa pagina per trovare la CLI bandiera, la variabile di ambiente o la chiave delle credenziali per qualsiasi impostazione di build.

Precedenza della configurazione: le __CAPGO_KEEP_0__ bandiere sovrascrivono le variabili di ambiente, che sovrascrivono le credenziali locali, che sovrascrivono le credenziali globali

Se le tue credenziali salvate hanno ma passi SKIP_BUILD_NUMBER_BUMP=true sulla __CAPGO_KEEP_0__, la __CAPGO_KEEP_1__ bandiera vince e i numeri di build saranno incrementati automaticamente. --no-skip-build-number-bump on the CLI, the CLI flag wins and build numbers will be auto-incremented.


CLI BandieraVariabile di ambienteChiave della credenzialePredefinitoDescrizione
--build-certificate-base64 <cert>BUILD_CERTIFICATE_BASE64BUILD_CERTIFICATE_BASE64codificato in Base64 .p12 certificato di distribuzione
--ios-provisioning-profile <map>CAPGO_IOS_PROVISIONING_MAPCAPGO_IOS_PROVISIONING_MAPProfilo di provisioning come un path o bundleId=path mappatura. Ripetibile per app multi-target (app + estensioni); il nome del profilo viene estratto automaticamente.
--p12-password <password>P12_PASSWORDP12_PASSWORDPassword per il .p12 certificato (omettere se il certificato non ha password)
CLI FlagVariabile di ambienteChiave delle credenzialiPredefinitoDescrizione
--apple-key-id <id>APPLE_KEY_IDAPPLE_KEY_IDApp Store Connect API ID chiave
--apple-issuer-id <id>APPLE_ISSUER_IDAPPLE_ISSUER_IDApp Store Connect ID emittente (UUID)
--apple-key-content <content>APPLE_KEY_CONTENTAPPLE_KEY_CONTENTBase64-encoded App Store Connect API key (.p8 file)
--app-store-connect-team-id <id>APP_STORE_CONNECT_TEAM_IDAPP_STORE_CONNECT_TEAM_IDID squadra App Store Connect
Sottosezione intitolata “L'autenticazione tramite password app-specific (non consigliata)”
CLI FlagVariabile di ambiente protettaChiave della chiave di accessoImpostazione predefinitaDescrizione
--apple-id <email>FASTLANE_USERFASTLANE_USERIndirizzo e-mail dell'ID Apple dell'account che possiede l'app
--apple-app-specific-password <password>FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORDFASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORDPassword specifica dell'app (xxxx-xxxx-xxxx-xxxx) generata su appleid.apple.com
--apple-app-id <id>APPLE_APP_IDAPPLE_APP_IDID numerico dell'app di App Store Connect (ad esempio 1234567890)
CLI FlagVariabile di ambienteChiave delle credenzialiPredefinitoDescrizione
--ios-scheme <scheme>CAPGO_IOS_SCHEMECAPGO_IOS_SCHEMEAppScegli lo schema Xcode per la costruzione
--ios-target <target>CAPGO_IOS_TARGETCAPGO_IOS_TARGETAppScegli il target Xcode per la lettura delle impostazioni di costruzione
--ios-distribution <mode>CAPGO_IOS_DISTRIBUTIONCAPGO_IOS_DISTRIBUTIONapp_storeModalità di distribuzione: app_store o ad_hoc

CLI FlagVariabile di ambienteChiave delle credenzialiPredefinitoDescrizione
--android-keystore-file <keystore>ANDROID_KEYSTORE_FILEANDROID_KEYSTORE_FILEFile di chiave keystore codificato in Base64 (.keystore o .jks)
--keystore-key-alias <alias>KEYSTORE_KEY_ALIASKEYSTORE_KEY_ALIASkey0Alias della chiave del keystore
--keystore-key-password <password>KEYSTORE_KEY_PASSWORDKEYSTORE_KEY_PASSWORDPassword della chiave del keystore (ricade sulla password del magazzino se non impostata)
--keystore-store-password <password>KEYSTORE_STORE_PASSWORDKEYSTORE_STORE_PASSWORDPassword del magazzino
CLI FlagVariabile di ambienteChiave delle credenzialiPredefinitoDescrizione
--play-config-json <json>PLAY_CONFIG_JSONPLAY_CONFIG_JSONChiave JSON del servizio Google Play codificata in Base64
(solo ambiente)PLAY_STORE_TRACKinternalRilascio traccia Google Play (internal, alpha, beta, production)
(solo ambiente)PLAY_STORE_RELEASE_STATUSdraftStato di rilascio sulla traccia scelta (draft, completed, inProgress, halted)
CLI FlagPredefinitoDescrizione
--android-flavor <flavor>Flavor di prodotto da costruire (ad esempio production). Richiesto se il tuo progetto definisce più flavor.
--in-app-update-priority <0–5>Priorità di aggiornamento in-app Google Play per questo rilascio (più alto = più urgente).
--no-playstore-uploadCostruisci e firma, ma saltare l'upload della Play Store (richiede --output-upload).

Queste opzioni funzionano per entrambi i build iOS e Android.

CLI FlagPredefinitoDescrizione
--platform <platform>Richiesto. ios o android
--build-mode <mode>releasedebug o release
--path <path>.Directory del progetto
--verbosefalseAbilita registrazione di logging di costruzione dettagliata
--ai-analyticsfalseIn caso di fallimento della costruzione, invia i log a Capgo AI per la diagnosi — vedi Diagnosi di costruzione con AI
CLI FlagVariabile di ambienteChiave delle credenzialiImpostazione predefinitaDescrizione
--skip-build-number-bumpSKIP_BUILD_NUMBER_BUMPSKIP_BUILD_NUMBER_BUMPfalseSaltare l'incremento automatico del numero di costruzione / versione code
--no-skip-build-number-bumpAbilita esplicitamente l'auto-incremento (sovrascrive le credenziali salvate)

Di default, Capgo Cloud Build incrementa automaticamente i numeri di build:

  • iOS: Estrae il numero di build più recente da App Store Connect, incrementa di 1
  • Android: Estrae il massimo versionCode da Google Play, incrementa di 1

Quando --skip-build-number-bump è impostato, il build utilizza la versione già presente nei file del progetto (progetto Xcode o build.gradle).

CLI FlagVariabile di ambienteChiave delle credenzialiPredefinitoDescrizione
--output-uploadBUILD_OUTPUT_UPLOAD_ENABLEDBUILD_OUTPUT_UPLOAD_ENABLEDfalseCarica i risultati della compilazione (IPA/APK/AAB) nel Capgo storage. Quando impostato tramite variabile di ambiente, utilizza BUILD_OUTPUT_UPLOAD_ENABLED=true.
--no-output-uploadBUILD_OUTPUT_UPLOAD_ENABLEDDisabilita l'upload dei risultati. Quando impostato tramite variabile di ambiente, utilizza BUILD_OUTPUT_UPLOAD_ENABLED=false.
--output-retention <duration>BUILD_OUTPUT_RETENTION_SECONDSBUILD_OUTPUT_RETENTION_SECONDS1hQuanto tempo rimangono attivi i collegamenti di download
--output-record <path>Dopo una compilazione riuscita, scrivi un record JSON (ID del lavoro, stato, URL di download, QR code) in <path> — leggilo nuovamente con build last-output.

Formato di conservazione: Utilizza durate leggibili da esseri umani come 1h, 6h, 2d, 7d. Minimo è 1 ora, massimo è 7 giorni. Quando impostato tramite variabile di ambiente, utilizza secondi (ad esempio, 3600 per 1 ora).

CLI FlagVariabile di ambientePredefinitoDescrizione
-a, --apikey <key>CAPGO_TOKENCapgo API chiave per l'autenticazione
--supa-host <host>Host Supabase personalizzato (solo self-hosting)
--supa-anon <key>Chiave anonima Supabase personalizzata (solo self-hosting)

Pronto per la pipeline CI/CD. Tutti i variabili sono facoltativi — impostare solo ciò che serve.

Finestra del terminale
# 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"
Finestra del terminale
# 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"
Finestra del terminale
# 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"

Invece di passare flag o variabili di ambiente ogni volta, salva le credenziali una volta sola:

Finestra del terminale
# 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
FlagPosizioneUtilizzo del caso
(predefinito)~/.capgo-credentials/credentials.jsonGlobale — condiviso da tutti i progetti sul tuo computer
--local.capgo-credentials.json in radice del progettoPer-progetto — sovrascrive il globale quando entrambi esistono

Le credenziali sono chiuse da ID dell'applicazione (ad esempio com.example.myapp), quindi un singolo file di credenziali può memorizzare impostazioni per più app senza conflitti. Le credenziali di ogni app sono ulteriormente suddivise per piattaforma (ios / android).

Finestra del terminale
# 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 }}
Fermata di terminale
# 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

Combina le credenziali salvate con CLI override:

Fermata di terminale
# 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

Il dettaglio di firma fornito dalle credenziali salvate mentre CLI flag sovrascrive il comportamento di costruzione per questa esecuzione specifica.