Ir al contenido

Opciones de configuración

Referencia completa para cada opción de configuración de Cloud Build. Utilice esta página para encontrar la bandera CLI, la variable de entorno o la clave de credencial para cualquier configuración de construcción.

Cada opción de construcción puede configurarse de varias maneras. Cuando la misma opción se configura en varios lugares, las fuentes de mayor prioridad ganan:

Ejemplo: Si tus credenciales guardadas tienen SKIP_BUILD_NUMBER_BUMP=true pero pasas --no-skip-build-number-bump en la bándera CLI, la bándera CLI gana y los números de compilación se incrementarán automáticamente.


CLI BanderaVariable de entornoClave de credencialesPredeterminadoDescripción
--build-certificate-base64 <cert>BUILD_CERTIFICATE_BASE64BUILD_CERTIFICATE_BASE64Codificado en Base64 .p12 certificado de distribución
--ios-provisioning-profile <map>CAPGO_IOS_PROVISIONING_MAPCAPGO_IOS_PROVISIONING_MAPperfil de provisión como un path o bundleId=path mapeo. Repetible para aplicaciones multi-objetivo (aplicación + extensiones); el nombre del perfil se extrae automáticamente.
--p12-password <password>P12_PASSWORDP12_PASSWORDContraseña para el .p12 certificado (omitir si el certificado no tiene contraseña)
CLI FlagVariable de EntornoClave de CredencialesPredeterminadoDescripción
--apple-key-id <id>APPLE_KEY_IDAPPLE_KEY_IDClave de ID de App Store Connect API
--apple-issuer-id <id>APPLE_ISSUER_IDAPPLE_ISSUER_IDID de emisor de App Store Connect (UUID)
--apple-key-content <content>APPLE_KEY_CONTENTAPPLE_KEY_CONTENTclave de App Store Connect API codificada en Base64 (.p8 archivo)
--app-store-connect-team-id <id>APP_STORE_CONNECT_TEAM_IDAPP_STORE_CONNECT_TEAM_IDID de equipo de App Store Connect
Sección titulada “Autenticación de contraseña específica de la aplicación (no recomendada)”
Bandera de CLIVariable de entornoClave de credencialesPredeterminadoDescripción
--apple-id <email>FASTLANE_USERFASTLANE_USERCorreo electrónico del ID de Apple del cuenta que posee la aplicación
--apple-app-specific-password <password>FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORDFASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORDContraseña específica de la aplicación (xxxx-xxxx-xxxx-xxxx) generada en appleid.apple.com
--apple-app-id <id>APPLE_APP_IDAPPLE_APP_IDID numérico de la aplicación de App Store Connect (por ejemplo, 1234567890)
CLI FlagVariable de entornoClave de credencialesPredeterminadoDescripción
--ios-scheme <scheme>CAPGO_IOS_SCHEMECAPGO_IOS_SCHEMEAppEsquema de Xcode para compilar
--ios-target <target>CAPGO_IOS_TARGETCAPGO_IOS_TARGETAppObjetivo de Xcode para leer configuraciones de compilación
--ios-distribution <mode>CAPGO_IOS_DISTRIBUTIONCAPGO_IOS_DISTRIBUTIONapp_storeModo de distribución: app_store o ad_hoc

CLI FlagVariable de EntornoClave de CredencialesPredeterminadoDescripción
--android-keystore-file <keystore>ANDROID_KEYSTORE_FILEANDROID_KEYSTORE_FILEArchivo de keystore codificado en Base64 (.keystore o .jks)
--keystore-key-alias <alias>KEYSTORE_KEY_ALIASKEYSTORE_KEY_ALIASkey0Alias de clave de keystore
--keystore-key-password <password>KEYSTORE_KEY_PASSWORDKEYSTORE_KEY_PASSWORDContraseña de clave de keystore (cae en la contraseña de almacenamiento si no está configurada)
--keystore-store-password <password>KEYSTORE_STORE_PASSWORDKEYSTORE_STORE_PASSWORDContraseña de almacenamiento de keystore
CLI FlagVariable de entornoClave de credencialesPredeterminadoDescripción
--play-config-json <json>PLAY_CONFIG_JSONPLAY_CONFIG_JSONClave de servicio de Google Play JSON base64 codificada
(solo entorno)PLAY_STORE_TRACKinternalConfiguración de pista de lanzamiento de Google Play (internal, alpha, beta, production)
(solo entorno)PLAY_STORE_RELEASE_STATUSdraftEstado de lanzamiento en la pista elegida (draft, completed, inProgress, halted)
CLI FlagPredeterminadoDescripción
--android-flavor <flavor>Flavor de producto para compilar (por ejemplo, production). Requerido si su proyecto define múltiples sabores.
--in-app-update-priority <0–5>Prioridad de actualización en la tienda de Google Play para esta versión (mayor = más urgente).
--no-playstore-uploadCompilar y firmar, pero omitir la carga en la tienda Play Store (requiere --output-upload).

Estas opciones funcionan tanto para compilaciones de iOS como para Android.

CLI FlagPredeterminadoDescripción
--platform <platform>Requerido. ios o android
--build-mode <mode>releasedebug o release
--path <path>.Directorio del proyecto
--verbosefalseHabilitar registro de construcción detallado
--ai-analyticsfalseAl fallar la construcción, enviar registros a Capgo AI para el diagnóstico — consulte Diagnóstico de construcción de IA
CLI FlagVariable de entornoClave de credencialesPredeterminadoDescripción
--skip-build-number-bumpSKIP_BUILD_NUMBER_BUMPSKIP_BUILD_NUMBER_BUMPfalseSaltar el incremento automático del número de compilación / versión code
--no-skip-build-number-bumpHabilitar explícitamente la auto-incrementación (sobreescribe credenciales guardadas)

Por defecto, Capgo Cloud Build incrementa automáticamente los números de compilación:

  • iOS: Obtiene el último número de compilación desde App Store Connect, incrementa en 1
  • Android: Obtiene max versionCode desde Google Play, incrementa en 1

Cuando --skip-build-number-bump está configurado, el build utiliza la versión que ya está en tus archivos de proyecto (proyecto Xcode o build.gradle).

CLI FlagVariable de entornoClave de credencialesPredeterminadoDescripción
--output-uploadBUILD_OUTPUT_UPLOAD_ENABLEDBUILD_OUTPUT_UPLOAD_ENABLEDfalseCarga los resultados de compilación (IPA/APK/AAB) a Capgo de almacenamiento. Cuando se establece mediante una variable de entorno, utilice BUILD_OUTPUT_UPLOAD_ENABLED=true.
--no-output-uploadBUILD_OUTPUT_UPLOAD_ENABLEDDeshabilita la carga de resultados de compilación. Cuando se establece mediante una variable de entorno, utilice BUILD_OUTPUT_UPLOAD_ENABLED=false.
--output-retention <duration>BUILD_OUTPUT_RETENTION_SECONDSBUILD_OUTPUT_RETENTION_SECONDS1h¿Cuánto tiempo permanecen activos los enlaces de descarga
--output-record <path>Después de una compilación exitosa, escribe un registro JSON (ID de trabajo, estado, URL de descarga, QR code) a <path> — léelo de nuevo con build last-output.

Formato de retención: Utilice duraciones legibles por humanos como 1h, 6h, 2d, 7d. El mínimo es 1 hora, el máximo es 7 días. Cuando se establece mediante una variable de entorno, utilice segundos (por ejemplo, 3600 para 1 hora).

CLI FlagVariable de EntornoPredeterminadoDescripción
-a, --apikey <key>CAPGO_TOKENCapgo API clave para la autenticación
--supa-host <host>Host de Supabase personalizado (solo para autohospedaje)
--supa-anon <key>Clave de anon de Supabase personalizada (solo para autohospedaje)

Listo para copiar y pegar en tu pipeline de CI/CD. Todas las variables son opcionales — solo establece lo que necesitas.

Ventana de 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"
Ventana de 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"
Ventana de 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"

En lugar de pasar banderas o variables de entorno cada vez, guarde las credenciales una vez:

Pantalla de 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
BanderasUbicaciónUso
(por defecto)~/.capgo-credentials/credentials.jsonGlobal — compartido en todos los proyectos en su máquina
--local.capgo-credentials.json en raíz del proyectoPor proyecto — supera global cuando ambos existen

Las credenciales están indexadas por ID de aplicación (por ejemplo, com.example.myapp), por lo que un archivo de credenciales único puede almacenar configuraciones para múltiples aplicaciones sin conflictos. Las credenciales de cada aplicación se dividen aún más por plataforma (ios / android).

Ventana de 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 }}
Ventana de 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

Combina credenciales guardadas con sobreescripciones de CLI:

Ventana de 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

Los detalles de firma proporcionados por las credenciales guardadas se combinan con las banderas de CLI que sobreescriben el comportamiento de compilación para esta ejecución específica.