Troubleshooting
Copiez un prompt de configuration avec les étapes d'installation et la guide markdown complète pour ce plugin.
Solutions to common issues when building native apps with Capgo Cloud Build.
Échecs de construction
Section intitulée “Échecs de construction”“Échec d'upload” ou “Dépassé de temps””
Section intitulée ““Échec d'upload” ou “Dépassé de temps”””Symptômes :
- Build fails during project upload
- Erreurs de temps limite après 60 secondes
Solutions :
-
Vérifiez votre connexion Internet
Fenêtre de terminal # Test connection to Capgocurl -I https://api.capgo.app -
Réduire la taille du projet
- Vérifiez
node_modules/n'est pas chargé (devrait être automatiquement exclu) - Vérifiez les gros fichiers dans votre projet :
Fenêtre de terminal find . -type f -size +10M - Vérifiez
-
Vérifiez l'expiration de l'URL de chargement
- Les URL de chargement expirent après 1 heure
- Si vous obtenez une erreur d'URL expirée, relancez la commande de build
“Délai de construction après 10 minutes”
Section intitulée ““Délai de construction après 10 minutes”””Symptômes :
- Build exceeds maximum allowed time
- Statut montre
timeout
Solutions :
-
Optimisez les dépendances
- Supprimez les packages npm inutilisés
- Utilisez
npm prune --productionavant de construire
-
Check for network issues in build
- Some dependencies may download large files during build
- Pré-cacher avec un fichier de verrouillage
-
Examinez les dépendances natives.
Fenêtre de terminal. # iOS - check Podfile for heavy dependenciescat ios/App/Podfile# Android - check build.gradlecat android/app/build.gradle -
Contactez le support
- If your app legitimately needs more time
- We can adjust limits for specific use cases
Problèmes d'authentification
Problèmes d'authentification“Clé API invalide” ou “Non autorisé”
Clé de section intitulée ““API clé invalide” ou “Non autorisé””Symptômes :
- L'erreur d'authentification empêche la construction
- 401 ou 403 erreurs
Solutions :
-
Vérifiez que la clé API est correcte
Fenêtre de terminal # Test with a simple commandbunx @capgo/cli@latest app list -
Vérifiez les permissions de la clé API
- La clé doit avoir
writeouallou - Check in Capgo dashboard under API Keys
- La clé doit avoir
-
Vérifiez que la clé API est lue
Fenêtre de terminal # Check environment variableecho $CAPGO_TOKEN# Or check your saved credentials filecat ~/.capgo-credentials/credentials.json # globalcat .capgo-credentials.json # local (--local) -
Se réauthentifier
Fenêtre de terminal bunx @capgo/cli@latest login
“App not found” or “No permission for this app”
Application non trouvée ou Aucun accès pour cette applicationSymptômes :
- Authentication works but app-specific error
Solutions :
-
Vérifiez que l'application est enregistrée
Fenêtre de terminal bunx @capgo/cli@latest app list -
Vérifiez que l'ID de l'application correspond
- Vérifier
capacitor.config.jsonappId - Ensure command uses correct app ID
- Vérifier
-
Vérifiez l'accès à l'organisation
- Vérifiez que vous êtes dans l'organisation correcte
- API doit avoir accès à l'organisation de l'application
Problèmes de construction iOS
Problèmes de construction iOS« L'Code signature a échoué »
Section intitulée ““Code signature échouée”””Symptômes :
- Build fails during code signing phase
- Erreurs Xcode concernant les certificats ou les profils
Solutions :
-
Verify certificate type matches build type
- Development builds need Development certificates
- App Store builds need Distribution certificates
-
Check certificate and profile match
Fenêtre de terminal # Decode and inspect your certificateecho $BUILD_CERTIFICATE_BASE64 | base64 -d > cert.p12openssl pkcs12 -in cert.p12 -nokeys -passin pass:$P12_PASSWORD | openssl x509 -noout -subject -
Ensure provisioning profile is valid
- Vérifiez la date d'expiration
- Vérifiez qu'il contient votre ID d'application
- Confirmez qu'il contient le certificat
-
Régeneratez les informations d'identification
- Supprimez le certificat/profil ancien
- Créez de nouveaux dans le portail Apple Developer
- Récoder et mettre à jour les variables d'environnement
Le profil de provisionnement ne contient pas le certificat de signature
Profil de provisionnement ne contient pas de certificat de signatureSymptômes :
- Xcode ne trouve pas de certificat dans le profil
Solutions :
-
Télécharger le dernier profil depuis Apple
- Accédez à Apple Developer → Certificats, IDs et Profils
- Télécharger le profil de provisionnement
- Vérifiez qu'il inclut votre certificat
-
Vérifiez que le certificat est dans le profil
Fenêtre de terminal # Extract profileecho $BUILD_PROVISION_PROFILE_BASE64 | base64 -d > profile.mobileprovision# View profile contentssecurity cms -D -i profile.mobileprovision -
Recréer le profil avec le certificat correct
- Dans le portail Apple Developer, éditez le profil
- Vérifiez que votre certificat de distribution est sélectionné
- Télécharger et ré-encoder
“L'authentification d'App Store Connect a échoué”
Section intitulée « « Échec d'authentification App Store Connect » »Symptômes :
- Échec de l'envoi vers TestFlight
- API clés d'erreur
Solutions :
-
Vérifiez les clés de sécurité API
- Vérifiez APPLE_KEY_ID (doit comporter 10 caractères)
- Vérifiez APPLE_ISSUER_ID (doit être au format UUID)
- Vérifiez que APPLE_KEY_CONTENT est correctement encodé en base64
-
Synchronisez l'horloge de votre ordinateur
- App Store Connect authentication uses short-lived JWTs generated from your local system time
- Apple rejette les jetons qui expirent dans plus de 20 minutes à l'avenir, donc même un léger décalage horaire peut faire échouer une clé valide
- Sur Windows, ouvrez Paramètres > Heure et langue > Date et heure et cliquez Sync now
- Sur macOS, ouvrez Réglages système > Général > Date et heure et activez la synchronisation automatique de l'heure
- Sur Linux, vérifiez
timedatectl statuset activez NTP si nécessaire - Après synchronisation, relancez la Capgo commande de build ou de connexion.
See Apple’s Génération de jetons pour les requêtes API Documentation pour la durée de vie du jeton App Store Connect.
-
Tester la clé API localement.
Fenêtre de terminal. # Decode keyecho $APPLE_KEY_CONTENT | base64 -d > AuthKey.p8# Test with fastlane (if installed)fastlane pilot list -
Vérifier les permissions de la clé API.
- Key needs “Developer” role or higher
- Vérifier dans App Store Connect -> Utilisateurs et accès -> Clés.
-
S'assurer que la clé n'est pas révoquée.
- Vérifier dans App Store Connect.
- Générer une nouvelle clé si nécessaire.
“L'installation de Pod a échoué”.
Échec de l'installation de PodSymptômes :
- L'installation de CocoaPods se termine par un échec
- Les erreurs de Podfile
Solutions :
-
Vérifiez que Podfile.lock est commité
Fenêtre de terminal git status ios/App/Podfile.lock -
Tester l'installation de pod localement
Fenêtre de terminal cd ios/Apppod install -
Vérifiez les pods incompatibles
- Vérifiez les conflits de versions dans Podfile
- Ensure all pods support your iOS deployment target
-
Vider le cache des pods
Fenêtre de terminal cd ios/Apprm -rf Podsrm Podfile.lockpod install# Then commit new Podfile.lock
Problèmes de construction Android
Problèmes de construction AndroidMot de passe de clé de stockage incorrect
Motif intitulé “Mot de passe de clé de sécurité incorrect”Symptômes :
- La construction faille lors de la signature
- Erreurs Gradle concernant le coffre de clés
Solutions :
-
Vérifiez le mot de passe du coffre-fort
Fenêtre de terminal # Test keystore locallykeytool -list -keystore my-release-key.keystore# Enter password when prompted -
Vérifiez les variables d'environnement
Fenêtre de terminal # Ensure no extra spaces or special charactersecho "$KEYSTORE_STORE_PASSWORD" | cat -Aecho "$KEYSTORE_KEY_PASSWORD" | cat -A -
Vérifiez l'encodage base64
Fenêtre de terminal # Decode and testecho $ANDROID_KEYSTORE_FILE | base64 -d > test.keystorekeytool -list -keystore test.keystore
“Alias de clé non trouvé”
Section intitulée ““Alias de clé non trouvé”””Symptômes :
- Signature échoue avec erreur d'alias
Solutions :
-
Liste d'alias de clés de coffre
Fenêtre de terminal keytool -list -keystore my-release-key.keystore -
Vérifier que l'alias correspond exactement
- L'alias est sensible à la casse
- Check for typos in KEYSTORE_KEY_ALIAS
-
Utiliser l'alias correct issu du coffre de clés
Fenêtre de terminal # Update environment variable to matchexport KEYSTORE_KEY_ALIAS="the-exact-alias-name"
“La construction Gradle a échoué”
Échec de la construction GradleSymptômes :
- Erreurs Gradle génériques
- Problèmes de compilation ou de dépendances
Solutions :
-
Testez la construction locale avant
Fenêtre de terminal cd android./gradlew clean./gradlew assembleRelease -
Vérifiez les dépendances manquantes
- Examinez les fichiers build.gradle
- Ensure all plugins are listed in dependencies
-
Verify Gradle version compatibility
Fenêtre de terminal # Check gradle versioncat android/gradle/wrapper/gradle-wrapper.properties -
Vider le cache Gradle
Fenêtre de terminal cd android./gradlew cleanrm -rf .gradle build
“Échec de l'upload sur Google Play”
Échec de l'upload vers Google Play StoreSymptômes :
- La construction réussit mais l'upload échoue
- Erreurs de compte de service
Solutions :
-
Vérifier le fichier JSON de compte de service
Fenêtre de terminal # Decode and check formatecho $PLAY_CONFIG_JSON | base64 -d | jq . -
Check service account permissions
- Allez à la Console de jeu → Paramètres → API Accès
- Ensure service account has access to your app
- Accordez la permission « Lancer dans les pistes de test »
-
Verify app is set up in Play Console
- App must be created in Play Console first
- Au moins un APK doit être téléchargé manuellement initialement
-
Vérifiez que API est activé
- Google Play Developer API doit être activé
- Vérifiez dans la console Google Cloud
Problèmes généraux
Section intitulée « Problèmes généraux »“Job not found” or “Build status unavailable”
Erreur de job ou statut de build indisponibleSymptômes :
- Impossible de vérifier le statut de construction
- Erreurs d'ID de job
Solutions :
-
Attendez un moment et réessayez
- Build jobs may take a few seconds to initialize
-
Vérifiez que l'ID de job est correct
- Verify the job ID from the initial build response
-
Vérifiez que la construction n'a pas expiré
- Build data is available for 24 hours
“La synchronisation du projet a échoué”
Problème de synchronisation du projetSymptômes :
- Build fails before compilation starts
- Erreurs de fichiers manquants
Solutions :
-
Exécutez la synchronisation locale de Capacitor
Fenêtre de terminal bunx cap sync -
Ensure all native files are committed
Fenêtre de terminal git status ios/ android/ -
Check for gitignored native files
- Vérifier le fichier .gitignore
- Ensure important config files aren’t ignored
“Build succeeded but I don’t see output”
La section intitulée « Le build a réussi mais je ne vois pas de sortie »Symptoms:
- Build shows success but no download link
Solutions:
-
Vérifiez la configuration de construction
- Artifact storage may not be configured
- Contactez le support si l'accès aux artefacts est indisponible pour votre build
-
For la soumission de TestFlight iOS
- Vérifiez App Store Connect
- La mise en œuvre peut prendre 5-30 minutes après l'upload.
-
For la soumission de Play Store Android
- Vérifiez Play Console → Testing → Test interne
- Processing may take a few minutes
Le build a réussi mais l'artefact est incorrect après un changement d'environnement
Section intitulée « Le build a réussi mais l'artefact est incorrect après un changement d'environnement »Symptômes :
- Le statut de build est
successMais l'IPA/AAB/APK ne correspond pas à la branche ou au goût que vous venez de construire. - Manque ou mauvais fichier AAB Android après changement de clés RC vs production ou
--android-flavor - Build finishes suspiciously fast right after changing signing config or product flavor
Cause : Capgo restaure la cache de construction par application par défaut (omettre cache_key pour le cache général partagé). Si RC et production partagent la même ID d'application sans clés séparées, une restauration peut réutiliser les résultats compilés de l'environnement précédent.
Solutions :
-
Utilisez une clé de cache par environnement (recommandé pour les pipelines RC/PROD en cours) :
Fenêtre de terminal # Productionbunx @capgo/cli@latest build request com.example.app --platform android \--cache-key=prod \--android-flavor production# Staging / RCbunx @capgo/cli@latest build request com.example.app --platform android \--cache-key=staging \--android-flavor staging -
Effectuer une construction nettoyante lors du débogage :
Fenêtre de terminal bunx @capgo/cli@latest build request com.example.app --platform android --no-cache -
Dans API ou les intégrations de webhook, passer
cache_keyou (par exemple"prod") ou définircache_enabled: falsepour une exécution nettoyante unique.
Voir Build cache pour la référence complète des options.
Problèmes spécifiques aux CI/CD
Problèmes spécifiques aux CI/CDGitHub Actions : “Commande non trouvée”
Section intitulée “GitHub Actions : “Commande non trouvée””Symptômes :
bunx @capgo/cli@latest …échoue dans CI avec “commande non trouvée”
Solutions :
-
Configurez d’abord Bun so
bunxsoit disponible :- uses: oven-sh/setup-bun@v2 -
Ensuite exécutez le CLI —
bunxfetches it on demand, no global install needed:- run: bunx @capgo/cli@latest build request com.example.app --platform android
GitHub Actions: “Secrets not found”
Section intitulée “GitHub Actions: “Secrets non trouvés””Symptômes :
- Environment variables empty in build
Solutions :
-
Vérifiez que les secrets sont définis
- Allez dans les Paramètres du dépôt → Secrets et variables → Actions
- Ajoutez tous les secrets requis
-
Utilisez la syntaxe correcte
env:CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }} -
Vérifiez que les noms de secrets correspondent
- Les noms sont sensibles à la casse
- Aucun faute d'orthographe dans les références de secrets
Obtenir plus d'aide
Section intitulée « Obtenir plus d'aide »Activer la journalisation détaillée
Activer la journalisation détaillée# Add debug flag (when available)bunx @capgo/cli@latest build request com.example.app --verboseCollecter les informations de construction
Informations de construction à collecterWhen contacting support, include:
-
Commande de construction utilisée
Fenêtre de terminal bunx @capgo/cli@latest build request com.example.app --platform ios -
Message d'erreur (sortie complète)
-
ID de tâche (from sortie de l'output de build)
-
Build logs Copiez l'ensemble de l'output terminal.
-
Informations sur l'environnement
Fenêtre de terminal node --versionnpm --versionbunx @capgo/cli@latest --version
Contactez le support
Section intitulée « Contactez le support »- Discord: Rejoignez notre communauté
- Courriel: support@capgo.app
- Documentation: Capgo Docs
Limites connues
Section intitulée « Limites connues »Limites actuelles :
- Temps de construction maximum : 10 minutes
- Taille maximale de téléchargement : ~500Mo
- iOS builds require 24-hour Mac leases, build on Mac will enqueue to ensure optimal usage
- Build artifact download availability depends on build destination and artifact storage configuration
These limitations may be adjusted based on feedback.
Le prescan m'a bloqué ma build
Section intitulée « Le prescan m'a bloqué ma build »Capgo exécute un prescan local prescan Avant l'envoi. Corrigez le problème signalé ou ignorez uniquement ce contrôle d'ID :
npx @capgo/cli@latest build request <appId> --platform ios \ --prescan-skip ios/capacitor-server-url-shippedVoir le catalogue complet : Vérifications préalables.
Ressources supplémentaires
Section intitulée « Ressources supplémentaires »- Prise en main - Guide de configuration initiale
- Options de configuration - Drapeaux CLI incluant
--cache-keyet--no-cache - Constructions iOS - Configuration spécifique à iOS
- Constructions Android - Configuration spécifique à Android
- Vérification préalable - Full list of pre-build checks and ignore flags
- Référence CLI - Documentation complète de la commande