Voulez-vous des lancements d'applications plus rapides et sans erreur pour iOS et Android? Les pipelines CI/CD pour les applications Capacitor automatisent la construction, le test et la mise en ligne, réduisant les temps de lancement de jusqu'à 70% et les erreurs de 60%. Ce guide couvre tout ce dont vous avez besoin de savoir, de la configuration de votre environnement à l'automatisation des mises à jour en direct avec Capgo.
Les principaux points à retenir :
- Pourquoi le CI/CD est important pour Capacitor applications: Accélère les builds de 78 % et réduit les rejets de magasin de 60 %.
- Outils essentiels: Xcode, Android Studio, CocoaPods, et plus.
- Configuration de la chaîne d'outils: Automate les tâches comme
npx cap syncMise en cache des dépendances, et constructions spécifiques au plateforme. - Actualisations en temps réel avec Capgo: Activer les mises à jour après la version de sortie avec des déploiements étalés et des garanties de reversion.
Étapes rapides de configuration :
- Préparer votre environnement: Installer les outils requis pour iOS et Android.
- Configurer votre projet: Mettre à jour
capacitor.config.tset gérer les variables d'environnement de manière sécurisée. - Files de pipelines: Automatiser les installations de dépendances, les constructions et les tests pour les deux plateformes.
- Optimiser les performances: Utilisez la mise en cache, les constructions parallèles et les flux de travail conditionnels.
- Ajoutez des mises à jour en temps réel: Intégrez Capgo pour des mises à jour OTA sécurisées avec des déploiements étalés.
Avec CI/CD, les applications Capacitor atteignent des lancements plus rapides, plus fluides tout en minimisant les erreurs et les interventions manuelles. Prêt à optimiser votre flux de travail ? Découvrons-le !
Intégrez vos pipelines CI/CD existants avec des capacités mobiles
Préparation de votre environnement CI/CD
Une fois que vous avez maîtrisé les bases de CI/CD, l'étape suivante consiste à configurer votre environnement. C'est la base de l'automatisation fiable.
Configuration des outils et logiciels
Assurez-vous d'avoir ces outils clés installés :
Pour le développement iOS :
- Xcode 14 ou une version plus récente
- Outils de ligne de commande Xcode
- CocoaPods pour gérer les dépendances
Pour le développement Android :
- Android Studio
- Android SDK 33 ou supérieur
- Kit de développement Java (JDK)
Pour confirmer que vos Outils de ligne de commande Xcode sont installés, utilisez :
xcode-select -p
Création d'un Capacitor Projet

Votre projet Capacitor doit être configuré correctement pour les workflows CI/CD. Le capacitor.config.ts fichier est au cœur de cette configuration :
const config: CapacitorConfig = {
appId: 'com.example.app',
webDir: 'build',
ios: {
scheme: 'MyApp'
}
}
Ce fichier assure que votre projet est conforme aux exigences CI/CD.
Configuration des Variables d'Environnement
Gérer les informations d'identification de manière sécurisée constitue une partie clé du lien entre votre configuration d'environnement et la chaîne de pipeline CI/CD.
Variables Clés à Définir :
BUILD_ENV: Spécifie la phase de déploiement (par exemple,production)IOS_SIGNING_IDENTITY: Votre code certificat de signatureANDROID_KEYSTORE_PATH: Chemin vers votre keystore Android
Pour les builds Android, générer dynamiquement un local.properties fichier pendant le processus CI :
echo "sdk.dir=$ANDROID_SDK_ROOT" > android/local.properties
Lorsque vous travaillez avec des builds iOS, assurez-vous que votre plateforme CI prend en charge les agents macOS.
To vérifier si votre environnement est prêt :
node --version | grep "v16" && xcodebuild -version | grep "Xcode 14" || exit 1
Gérer correctement les clés et les informations d'identification peut considérablement réduire les chances de rejet de l'application dans les magasins, comme le montre les statistiques précédentes [1].
Créer votre pipeline CI/CD
Une fois votre environnement prêt, l'étape suivante consiste à configurer un pipeline CI/CD pour votre Capacitor application . Ce pipeline doit gérer efficacement à la fois les actifs web et les builds de plateformes natives.
Installation et mise à jour des dépendances
Dans les environnements CI/CD, la gestion des dépendances nécessite un contrôle de version strict. Commencez par un processus d'installation propre :
npm install --ignore-scripts
npm install @capacitor/cli
Pour accélérer les builds, utilisez la mise en cache des dépendances. Par exemple, Utilisateurs Azure DevOps ont vu leurs temps de build s'améliorer de 40 à 60 % avec ce paramétrage :
- task: Cache@2
inputs:
key: 'npm | "$(Agent.OS)" | package-lock.json'
path: |
node_modules
android/.gradle
ios/Pods
Configuration des builds iOS et Android
Voici comment configurer les builds pour les deux plateformes :
Configuration de build iOS :
steps:
- task: InstallAppleCertificate@2
inputs:
certSecureFile: 'certificate.p12'
certPwd: $(P12_PASSWORD)
- script: |
xcodebuild -workspace ios/App/App.xcworkspace -scheme App -configuration Release -archivePath ios/App/App.xcarchive archive
Configuration de build Android :
cd android
./gradlew bundleRelease
Étapes de test et de déploiement
Exécutez les tests de plateforme en parallèle en utilisant une stratégie de matrice :
test:
steps:
- run: npm run test:unit
- run: npm run test:e2e
- name: Run Platform Tests
matrix:
platform: [ios, android]
run: npm run test:${{ matrix.platform }}
Pour le déploiement, configurez la gestion d'artefact spécifique à la plateforme :
| Plateforme | Type d'artefact | Canal de distribution |
|---|---|---|
| iOS | .ipa | App Store Connect |
| Android | .aab | Google Play Console |
L'utilisation de la construction parallèle peut réduire considérablement le temps d'exécution du pipeline lorsque celui-ci est configuré correctement.
Une fois vos builds validés et emballés, vous êtes prêt à passer à des mises à jour en direct avec Capgo (discuté dans la section suivante).
sbb-itb-f9944d2
Ajouter Capgo pour les Mises à jour en Direct

L'intégration de Capgo à votre flux de travail améliore votre processus CI/CD en permettant des mises à jour après la mise en production. Voici comment l'installer :
Capgo Configuration du Pipeline
Tout d'abord, installez le Capgo CLI dans votre environnement de pipeline :
steps:
- name: Install Capgo CLI
run: npm install -g @capgo/cli
- name: Configure Authentication
env:
CAPGO_KEY: ${{ secrets.CAPGO_API_KEY }}
Cette addition étend votre cycle CI/CD en intégrant la gestion des mises à jour dans votre processus de construction et de déploiement automatisé.
Ensuite, incluez la commande d'upload après vos étapes de construction :
- name: Upload Update
run: |
capgo upload --api-key $CAPGO_KEY --bundle ./build/app-release.apk
capgo deploy v${VERSION} --channel production
Pour les mises à jour sécurisées, configurez les paramètres de validation comme suit :
{
"verification": {
"checksum": "strict",
"certificatePinning": true,
"updateTimeout": 500
}
}
Capgo Aperçu des fonctionnalités
| Fonctionnalité | Description |
|---|---|
| Chiffrement de bout en bout | Réduit considérablement les erreurs de déploiement. |
| Déploiement basé sur les canaux | Personnalise les mises à jour en fonction des environnements spécifiques. |
| Déploiements étalés | S'assure que les mises à jour sont distribuées progressivement. |
Lignes directrices de mise à jour OTA
Améliorez vos processus de test en suivant ces principaux indicateurs après déploiement :
Stratégie de déploiement étalé
Utilisez un déploiement étalé pour contrôler la distribution des mises à jour :
- name: Staged Rollout
run: |
capgo deploy v1.2.3 --group "beta-users" --rollout 10%
capgo deploy v1.2.3 --rollout 50%
Suivi des mises à jour
Surveillez ces indicateurs :
- Taux d'adoption: Visez 40-60% dans les 24 premières heures.
- Séances sans crash: Maintenez au-dessus de 99,5%.
- Temps de vérification: Assurez-vous qu'il est inférieur à 500ms.
Si les crashes dépassent les niveaux acceptables, automatiser un retour en arrière :
- name: Rollback Check
run: |
if [ $(capgo stats --version v1.2.3 --metric crashes) -gt 2 ]; then
capgo rollback --channel production
fi
Amélioration de la performance de la chaîne d'approvisionnement
Se concentrer sur trois domaines clés peut entraîner des améliorations notables dans votre chaîne d'approvisionnement :
Optimisation de la vitesse de construction
Pour les modifications web uniquement, utiliser npx cap sync peut économiser du temps en sautant les reconstructions natives complètes, en réduisant le temps de reconstruction d'environ 40%. Voici comment vous pouvez mettre en œuvre la construction conditionnelle :
- name: Build Strategy
run: |
[ "$WEB_ONLY" = true ] && npx cap sync || (./gradlew assembleRelease && xcodebuild ...)
Cette approche garantit que seuls les composants nécessaires sont reconstruits, simplifiant le processus.
Automatisation du Contrôle de Version
L'automatisation du contrôle de version peut simplifier votre flux de travail. Utilisez le script suivant pour définir dynamiquement les numéros de version et de build :
- name: Set Version
run: |
VERSION=$(node -p "require('./package.json').version")
BUILD_NUMBER=$GITHUB_RUN_NUMBER
echo "APP_VERSION=${VERSION}" >> $GITHUB_ENV
echo "BUILD_ID=${BUILD_NUMBER}" >> $GITHUB_ENV
De plus, la versionnement semantique automatisé peut être configuré avec cette configuration :
{
"scripts": {
"version": "standard-version",
"build:prod": "npm version patch && ionic build --prod"
}
}
Ces pratiques fournissent un cadre solide pour suivre et améliorer les performances du pipeline à travers des métriques comme :
- Temps de construction par étape
- Efficacité de la cache (taux de touché/taux de manquants)
- Utilisation maximale des ressources
Configuration de plusieurs Environnements
La gestion de plusieurs environnements peut être simplifiée en utilisant des configurations spécifiques à l'environnement. Voici un exemple de configuration :
| Environnement | Configuration File |
|---|---|
| Développement | .env.dev |
| Étape de pré-production | .env.staging |
| Production | Chiffriers sécurisés |
Vous pouvez configurer les environnements dynamiquement avec ce script :
- name: Configure Environment
env:
API_KEY: ${{ secrets.ENV_SPECIFIC_API_KEY }}
BUNDLE_ID: ${{ parameters.bundleId }}
run: |
echo "ENVIRONMENT=${{ parameters.environment }}" >> $GITHUB_ENV
echo "API_ENDPOINT=${{ parameters.apiUrl }}" >> $GITHUB_ENV
En associant ces configurations au déploiement basé sur le canal de Capgo permet des mises à jour précises et spécifiques à l'environnement. Cela garantit des déploiements plus fluides et un meilleur contrôle sur le comportement de l'application dans différents environnements.
Résumé
Le rôle de CI/CD dans le développement
Utiliser les pipelines CI/CD pour les applications Capacitor accélère considérablement l'efficacité du flux de travail. Selon les données de l'industrie, les équipes peuvent atteindre 50-70% de cycles de mise en production accélérés grâce à des builds simultanés pour iOS et Android [3]. Automatiser les tâches comme l'installation des dépendances et la synchronisation des plateformes réduit les erreurs de déploiement par 40-60% [1][2].
Par exemple, les équipes qui utilisent les pipelines Azure DevOps ont automatisé des processus comme les étapes de construction séquentielles et le packaging Xcode. Elles utilisent également des environnements paramétrés pour le développement et la production. Cette approche supprime la nécessité d'opérations manuelles Gradle et Xcode CLI, garantissant la création de l'artifact fiable chaque fois.
Ces améliorations créent les bases pour une gestion des mises à jour fluides lorsqu'elles sont associées à Capgo.
Capgo pour la gestion des mises à jour
Capgo fonctionne en parfaite harmonie avec les pipelines CI/CD pour délivrer des mises à jour instantanées tout en restant conforme aux politiques des magasins d'applications. Les mises à jour ne sont déployées qu'après avoir passé les tests automatisés intégrés dans le pipeline.
En combinant les builds automatisés avec les déploiements en phases, les équipes atteignent des résultats impressionnants : 80% de couverture utilisateur en 7 jours et des capacités de retrait en moins d'une heure.
Une stratégie courante consiste à exécuter des trajectoires de déploiement parallèles. Les builds automatisés sont utilisés pour les tests internes, tandis que les déploiements en phases ciblent les segments d'utilisateurs. Cela garantit que les mises à jour sont à la fois rapides et sûres, étayées par des tests automatisés rigoureux. [1].
FAQs
Comment créer une application Capacitor?
La création d'une application Capacitor implique quelques étapes simples :
-
Configurez votre environnement: Installez Node.js et npm sur votre système. Utilisez ensuite l'CLI Ionic pour créer un nouveau projet avec prise en charge de Capacitor :
ionic start myApp tabs --capacitor -
Ajoutez la prise en charge de plateforme: Ajoutez les plateformes que vous souhaitez cibler, telles que iOS ou Android :
npx cap add ios npx cap add android -
Synchronisez votre code web: Assurez-vous que votre code web est aligné avec les plateformes natives en exécutant :
npx cap sync
La mise à jour de synchronisation est cruciale pour maintenir votre application cohérente sur les plateformes et garantir une opération fluide dans les pipelines CI/CD. Pour plus de détails sur la configuration de votre environnement, consultez la section Outils.
Continuez à partir de la configuration de CI/CD pour les applications Capacitor
Si vous utilisez Configuration de CI/CD pour les applications Capacitor pour planifier l'automatisation de CI/CD, connectez-le avec Capgo CI/CD pour le flux de travail du produit dans Capgo CI/CD, Capgo Rendus natifs pour le flux de travail du produit dans Capgo Rendus natifs, Capgo Intégrations pour le flux de travail du produit dans Capgo Intégrations, Intégration CI/CD pour le détail d'implémentation dans Intégration CI/CD, et GitHub Intégration d'actions pour le détail d'implémentation dans GitHub Intégration d'actions.