Opciones de configuración
Copia un prompt de configuración con los pasos de instalación y la guía de markdown completa para este plugin.
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 credenciales para cualquier configuración de compilación.
Precedencia de la configuración
Sección titulada “Precedencia de la configuración”Cada opción de compilación puede ser configurada de varias maneras. Cuando la misma opción se configura de varias maneras, las fuentes de mayor prioridad ganan:
flowchart LR
A["🔧 CLI Flag"] -->|overrides| B["🌍 Environment Variable"]
B -->|overrides| C["📁 Local Credentials"]
C -->|overrides| D["🏠 Global Credentials"]
style A fill:#6366f1,color:#fff,stroke:#4f46e5
style B fill:#8b5cf6,color:#fff,stroke:#7c3aed
style C fill:#a78bfa,color:#fff,stroke:#8b5cf6
style D fill:#c4b5fd,color:#1e1b4b,stroke:#a78bfa
Ejemplo: Si tus credenciales guardadas tienen SKIP_BUILD_NUMBER_BUMP=true pero pasas --no-skip-build-number-bump en la bandera CLI, la bandera CLI gana y los números de compilación se incrementarán automáticamente.
Opciones de iOS
Sección titulada “Opciones de iOS”Code Firma
Sección titulada “Code Firma”| CLI Bandera | Variable de entorno | Clave de credenciales | Valor predeterminado | Descripción |
|---|---|---|---|---|
--build-certificate-base64 <cert> | BUILD_CERTIFICATE_BASE64 | BUILD_CERTIFICATE_BASE64 | — | Codificado en Base64 .p12 certificado de distribución |
--ios-provisioning-profile <map> | CAPGO_IOS_PROVISIONING_MAP | CAPGO_IOS_PROVISIONING_MAP | — | perfil de provisión como un path o bundleId=path mapa. Repetible para aplicaciones multi-destino (aplicación + extensiones); el nombre del perfil se extrae automáticamente. |
--p12-password <password> | P12_PASSWORD | P12_PASSWORD | — | contraseña para el .p12 certificado (omitir si el certificado no tiene contraseña) |
Autenticación de App Store Connect
Sección titulada “Autenticación de App Store Connect”| CLI Flag | Variable de Entorno | Clave de Credenciales | Predeterminado | Descripción |
|---|---|---|---|---|
--apple-key-id <id> | APPLE_KEY_ID | APPLE_KEY_ID | — | ID de clave de App Store Connect API |
--apple-issuer-id <id> | APPLE_ISSUER_ID | APPLE_ISSUER_ID | — | ID de emisor de App Store Connect (UUID) |
--apple-key-content <content> | APPLE_KEY_CONTENT | APPLE_KEY_CONTENT | — | Clave de App Store Connect API codificada en Base64 (.p8 archivo) |
--app-store-connect-team-id <id> | APP_STORE_CONNECT_TEAM_ID | APP_STORE_CONNECT_TEAM_ID | — | ID de equipo de App Store Connect |
Autenticación de contraseña específica de la aplicación (no recomendada)
Título de la sección “Autenticación de contraseña específica de la aplicación (no recomendada)”| CLI Flag | Variable de entorno | Clave de credenciales | Predeterminado | Descripción |
|---|---|---|---|---|
--apple-id <email> | FASTLANE_USER | FASTLANE_USER | — | Correo electrónico del ID de Apple de la cuenta que posee la aplicación |
--apple-app-specific-password <password> | FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD | FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD | — | Contraseña de la aplicación específica (xxxx-xxxx-xxxx-xxxx) generada en appleid.apple.com |
--apple-app-id <id> | APPLE_APP_ID | APPLE_APP_ID | — | ID numérico de la aplicación de App Store Connect (por ejemplo, 1234567890) |
Ajustes de compilación de iOS
Sección titulada “Ajustes de compilación de iOS”| CLI Flag | Variable de entorno | Clave de credenciales | Predeterminado | Descripción |
|---|---|---|---|---|
--ios-scheme <scheme> | CAPGO_IOS_SCHEME | CAPGO_IOS_SCHEME | App | Esquema de Xcode para compilar |
--ios-target <target> | CAPGO_IOS_TARGET | CAPGO_IOS_TARGET | App | Objetivo de Xcode para leer configuraciones de compilación |
--ios-distribution <mode> | CAPGO_IOS_DISTRIBUTION | CAPGO_IOS_DISTRIBUTION | app_store | Modo de distribución: app_store o ad_hoc |
¿Qué alternativas hay?
Opciones para AndroidTítulo de la sección: Opciones para Android
Autenticación con llave de keystore| CLI Flag | __CAPGO_KEEP_0__ Flag | Variable de entorno | Clave de credenciales | Predeterminado |
|---|---|---|---|---|
--android-keystore-file <keystore> | ANDROID_KEYSTORE_FILE | ANDROID_KEYSTORE_FILE | — | Archivo de clave de seguridad codificado en Base64 (.keystore o .jks) |
--keystore-key-alias <alias> | KEYSTORE_KEY_ALIAS | KEYSTORE_KEY_ALIAS | key0 | Alias de clave de seguridad |
--keystore-key-password <password> | KEYSTORE_KEY_PASSWORD | KEYSTORE_KEY_PASSWORD | — | Contraseña de clave de seguridad (se reemplaza con la contraseña de almacenamiento si no está configurada) |
--keystore-store-password <password> | KEYSTORE_STORE_PASSWORD | KEYSTORE_STORE_PASSWORD | — | Contraseña de almacenamiento de clave de seguridad |
Configuración de Google Play
Sección titulada “Configuración de Google Play”| CLI Flag | Variable de entorno | Clave de credenciales | Predeterminado | Descripción |
|---|---|---|---|---|
--play-config-json <json> | PLAY_CONFIG_JSON | PLAY_CONFIG_JSON | — | Clave JSON de cuenta de servicios de Google Play codificada en Base64 |
--android-track <track> | PLAY_STORE_TRACK | PLAY_STORE_TRACK | internal (o) production con --submit-to-store-review) | pista de lanzamiento de Google Play (internal, alpha, beta, productionForwarded from CI env / CLI en el ejecutor de compilación. |
--android-release-status <status> | PLAY_STORE_RELEASE_STATUS | PLAY_STORE_RELEASE_STATUS | draft (o) completed con --submit-to-store-review) | Estado de lanzamiento en la pista elegida (draft, completed, inProgress, haltedValores explícitos sobrescriben el --submit-to-store-review Configuración de compilación de Android |
Sección titulada “Configuración de compilación de Android”
Section titled “Configuración de compilación de Android”| CLI Flag | Predeterminado | Descripción |
|---|---|---|
--android-flavor <flavor> | — | Sabor del producto para compilar (por ejemplo, production). Requerido si su proyecto define múltiples sabores. |
--android-track <track> | internal | Pista de Google Play para esta carga. Con --submit-to-store-review y sin pista configurada, Capgo se establece en production. |
--android-release-status <status> | draft | estado de lanzamiento de Google Play. Con --submit-to-store-review y sin estado configurado, Capgo se establece en completed. |
--in-app-update-priority <0–5> | — | prioridad de actualización en-aplicación de Google Play para esta versión (mayor = más urgente). |
--no-playstore-upload | — | Compilar y firmar, pero omitir la carga en la Tienda de Google Play (requiere --output-upload). |
Opciones de Control de Construcción
Sección titulada “Opciones de Control de Construcción”Estas opciones funcionan tanto para builds de iOS como para builds de Android.
Modo de Construcción
Sección titulada “Modo de Construcción”| CLI Flag | Predeterminado | Descripción |
|---|---|---|
--platform <platform> | — | Requerido. ios o android |
--build-mode <mode> | release | debug o release |
--path <path> | . | Directorio del proyecto |
--verbose | false | Habilitar registro de compilación detallado |
--ai-analytics | false | Al fallar la compilación, envíe los registros a Capgo AI para el diagnóstico — consulte Diagnóstico de compilación AI |
Control de Número de Compilación
Sección titulada “Control de Número de Compilación”| CLI Flag | Variable de Entorno | Clave de Credenciales | Predeterminado | Descripción |
|---|---|---|---|---|
--skip-build-number-bump | SKIP_BUILD_NUMBER_BUMP | SKIP_BUILD_NUMBER_BUMP | false | Saltar el incremento automático del número de compilación / versión code |
--no-skip-build-number-bump | — | — | — | Habilitar explícitamente el incremento automático (sobreescribe las 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 de App Store Connect, incrementa en 1
- Android: Obtiene el máximo
versionCodede Google Play, incrementa en 1
Cuando --skip-build-number-bump está configurado, la compilación utiliza la versión que ya está en los archivos de su proyecto (proyecto de Xcode o build.gradle).
Subir salida
Sección titulada “Subir salida”| CLI Bandera | Variable de entorno | Clave de credenciales | Predeterminado | Descripción |
|---|---|---|---|---|
--output-upload | BUILD_OUTPUT_UPLOAD_ENABLED | BUILD_OUTPUT_UPLOAD_ENABLED | false | Subir resultados de compilación (IPA/APK/AAB) a Capgo de almacenamiento. Cuando se establezca mediante una variable de entorno, utilice BUILD_OUTPUT_UPLOAD_ENABLED=true. |
--no-output-upload | BUILD_OUTPUT_UPLOAD_ENABLED | — | — | Deshabilitar la subida de resultados. Cuando se establezca mediante una variable de entorno, utilice BUILD_OUTPUT_UPLOAD_ENABLED=false. |
--output-retention <duration> | BUILD_OUTPUT_RETENTION_SECONDS | BUILD_OUTPUT_RETENTION_SECONDS | 1h | ¿Cuánto tiempo permanecen activos los enlaces de descarga? |
--output-record <path> | — | — | — | Después de una compilación exitosa, escriba un registro JSON (ID de trabajo, estado, URL de descarga, QR code) en <path> — leerlo de nuevo con build last-output. |
Formato de retención: Utilice duraciones legibles por humanos como 1h, 6h, 2d, 7dLa mínima es 1 hora, el máximo es 7 días. Cuando se establezca mediante una variable de entorno, utilice segundos (por ejemplo, 3600 por 1 hora).
Autenticación
Sección titulada “Autenticación”| CLI Flag | Variable de entorno | Valor predeterminado | Descripción |
|---|---|---|---|
-a, --apikey <key> | CAPGO_TOKEN | — | Capgo API clave para la autenticación |
--supa-host <host> | — | — | Host de Supabase personalizado (solo autohospedaje) |
--supa-anon <key> | — | — | Clave de anonimo de Supabase personalizada (solo autohospedaje) |
Referencia rápida de variables de entorno
Sección titulada “Referencia rápida de variables de entorno”Listo para copiar y pegar en tu pipeline de CI/CD. Todas las variables son opcionales — solo establece lo que necesitas.
# 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 settingsCAPGO_IOS_SCHEME="App"CAPGO_IOS_TARGET="App"# 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 settingsPLAY_STORE_TRACK="internal"PLAY_STORE_RELEASE_STATUS="draft"Control de compilación
Título de la sección “Control de compilación”# Build behaviorSKIP_BUILD_NUMBER_BUMP="true" # Skip auto-incrementBUILD_OUTPUT_UPLOAD_ENABLED="true" # Upload IPA/APK/AABBUILD_OUTPUT_RETENTION_SECONDS="3600" # 1 hour download link
# AuthenticationCAPGO_TOKEN="your-api-key"Almacenamiento de credenciales
Sección titulada “Almacenamiento de credenciales”Guardar credenciales localmente
Sección titulada “Guardar credenciales localmente”En lugar de pasar banderas o variables de entorno cada vez, guarde las credenciales una vez:
# Save iOS credentialsbunx @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 credentialsbunx @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.jsonUbicaciones de almacenamiento
Sección titulada “Ubicaciones de almacenamiento”| Banderas | Ubicación | Uso de caso |
|---|---|---|
| (por defecto) | ~/.capgo-credentials/credentials.json | Global — compartido entre todos los proyectos en su máquina |
--local | .capgo-credentials.json en la raíz del proyecto | Por proyecto — sobreescribe el global cuando ambos existen |
Las credenciales están codificadas por ID de la aplicación (por ejemplo com.example.myapp), por lo que un archivo de credenciales puede almacenar configuraciones para múltiples aplicaciones sin conflictos. Las credenciales de cada aplicación se dividen además por plataforma (ios / android).
Gestione Credenciales Guardadas
Sección titulada “Gestione Credenciales Guardadas”# List saved credentialsbunx @capgo/cli@latest build credentials list
# Update a specific option without re-entering everythingbunx @capgo/cli@latest build credentials update --skip-build-number-bump
# Clear saved credentialsbunx @capgo/cli@latest build credentials clear --platform iosEjemplos
Sección titulada “Ejemplos”GitHub Acciones
Sección titulada “GitHub Acciones”name: Build and Submiton: 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 }}Usando CLI Flags Directamente
Sección titulada “Usando CLI Flags Directamente”# Build iOS with all options inlinebunx @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 uploadbunx @capgo/cli@latest build request \ --platform android \ --skip-build-number-bump \ --no-output-upload \ --apikey YOUR_API_KEYConfiguración mixta
Título de la sección “Configuración mixta”Combina credenciales guardadas con sobreescripciones de CLI:
# Save base credentials oncebunx @capgo/cli@latest build credentials save --platform ios \ --certificate ./cert.p12 \ --ios-provisioning-profile ./profile.mobileprovision \ --output-upload
# Override specific options per-buildbunx @capgo/cli@latest build request --platform ios \ --skip-build-number-bump \ --output-retention 2dLas credenciales guardadas proporcionan detalles de firma mientras las banderas de CLI sobreescriben el comportamiento de compilación para esta ejecución específica.