Migrer de Capawesome Cloud vers Capgo
Copiez un prompt de configuration incluant les étapes d'installation et le guide markdown complet pour ce plugin.
⚡️ Capgo automatise les canaux, le nettoyage des bundles, les rollbacks, l'analytics et les uploads CLI de manière native. Utilisez ce guide pour effectuer les étapes minimales nécessaires à la migration et, si besoin, recréer vos comportements personnalisés.
- Rassemblez votre configuration Capawesome Cloud actuelle (App ID, canaux, clés de signature, tokens CLI) afin de pouvoir l'archiver ou l'auditer plus tard.
- Installez le plugin Capgo, supprimez le SDK de Capawesome, et appelez
CapacitorUpdater.notifyAppReady(). - Configurez les comportements optionnels (téléchargements manuels, pinning de bundles, reloads) si vous utilisez ces flux actuellement.
Avec Capgo, il vous suffit d'installer notre plugin et d'appeler CapacitorUpdater.notifyAppReady(). Tout le reste — canaux, nettoyage des bundles, rollbacks, analytics et l'automatisation CLI — est géré nativement. Les sections ci-dessous détaillent chaque tâche.
Avant de commencer
Section intitulée « Avant de commencer »- Assurez-vous que votre projet utilise déjà Capacitor 5 ou une version ultérieure.
- Installez le Capgo CLI (
npm install -g @capgo/cli) si vous prévoyez d'envoyer des bundles via CI/CD.
Étape 1 – Installer Capgo et supprimer le SDK de Capawesome
Section intitulée « Étape 1 – Installer Capgo et supprimer le SDK de Capawesome »npm uninstall @capawesome/capacitor-live-updatenpm install @capgo/capacitor-updaternpx cap syncC'est le seul remplacement obligatoire. Le code natif de Capgo est inclus avec le plugin ; aucun helper JavaScript supplémentaire n'est requis.
Étape 2 – Configuration minimale
Section intitulée « Étape 2 – Configuration minimale »L'ancienne configuration nécessitait de mapper des dizaines d'options dans capacitor.config. Capgo reconnaît votre projet automatiquement, la configuration minimale ressemble donc à ceci :
import { CapacitorConfig } from '@capacitor/cli'
const config: CapacitorConfig = { plugins: { CapacitorUpdater: { autoUpdate: true, autoDeletePrevious: true, periodCheckDelay: 10 * 60 * 1000, // optional: check every 10 minutes }, },}
export default configTout ce que Capawesome liste comme des flags manuels (defaultChannel, autoDeleteBundles, les politiques de rétention, etc.) est géré via le dashboard Capgo ou API. Vous n'avez besoin de surcharger ces clés que si vous souhaitez un comportement différent des réglages par défaut de Capgo.
Référence rapide de configuration
Section intitulée « Référence rapide de configuration »| Option Capawesome | Équivalent Capgo | Doit-on la configurer ? |
|---|---|---|
appId | Récupéré depuis le dashboard Capgo une fois votre projet créé | Seulement si vous utilisez plusieurs projets dans un seul binaire |
defaultChannel | Règles de canal gérées dans le dashboard/API | Optional; most teams set this server-side |
autoDeleteBundles | autoDeletePrevious: true (par défaut) | Déjà activé |
publicKey | Géré via la console Capgo | Uniquement si vous faites une rotation manuelle des clés |
maxVersions / rétention | Politique de rétention des bundles | Configurée de façon centralisée dans Capgo (1 mois par défaut, 24 mois max) |
Étape 3 – Appeler notifyAppReady() (le seul hook requis)
Section intitulée « Étape 3 – Appeler notifyAppReady() (le seul hook requis) »L'ancien workflow introduisait des écouteurs personnalisés (checkForUpdates(), retryDownload(), le masquage de l'écran de splash, etc.). Capgo effectue ces étapes nativement. Le seul API que vous devez appeler est :
import { CapacitorUpdater } from '@capgo/capacitor-updater'
CapacitorUpdater.notifyAppReady()Cela confirme que l'application a démarré avec succès. Si la confirmation n'arrive jamais, Capgo effectue automatiquement un rollback du bundle, sans JavaScript supplémentaire.
C'est tout—Capgo gère nativement les vérifications en arrière-plan, la visibilité du splash screen et les rollbacks.
Optionnel : exécuter une logique personnalisée avant de masquer le splash screen
import { CapacitorUpdater } from '@capgo/capacitor-updater'import { SplashScreen } from '@capacitor/splash-screen'
CapacitorUpdater.addListener('appReady', () => { // Run diagnostics or logging if you need to SplashScreen.hide()})
CapacitorUpdater.notifyAppReady()Étape 4 – Mapper les appels API (optionnel)
Section intitulée « Étape 4 – Mapper les appels API (optionnel) »Avec Capgo, vous laissez normalement l'auto-updater s'exécuter ; les API manuelles restent disponibles si vous souhaitez un contrôle total.
| Capawesome Cloud | Équivalent Capgo | En avez-vous besoin ? |
|---|---|---|
LiveUpdate.fetchLatestBundle() | CapacitorUpdater.getLatest() | Only when implementing your own download workflow |
LiveUpdate.downloadBundle() | CapacitorUpdater.download() | Optionnel : l'auto-update natif télécharge déjà |
LiveUpdate.setNextBundle() | CapacitorUpdater.next() | Optionnel : le dashboard épingle les bundles automatiquement |
LiveUpdate.reload() | CapacitorUpdater.reload() | Optionnel ; Capgo impose ensuite les bundles obligatoires notifyAppReady() |
LiveUpdate.getCurrentBundle() | CapacitorUpdater.current() | Diagnostics optionnels |
Si vous conservez le comportement de l'auto-update natif, vous pouvez supprimer entièrement le JavaScript de Capawesome.
Exemples de contrôle manuel
Section intitulée « Exemples de contrôle manuel »Télécharger le dernier bundle
import { CapacitorUpdater } from '@capgo/capacitor-updater'
const downloadUpdate = async () => { const latest = await CapacitorUpdater.getLatest() if (latest?.url) { const bundle = await CapacitorUpdater.download({ url: latest.url, version: latest.version, }) console.log('Bundle downloaded', bundle?.id) }}import { LiveUpdate } from '@capawesome/capacitor-live-update'
const downloadUpdate = async () => { const result = await LiveUpdate.fetchLatestBundle() if (result.downloadUrl) { await LiveUpdate.downloadBundle({ bundleId: result.bundleId, url: result.downloadUrl, }) console.log('Bundle downloaded') }}Définir le prochain bundle
import { CapacitorUpdater } from '@capgo/capacitor-updater'
const setNextBundle = async () => { await CapacitorUpdater.next({ id: 'bundle-id-123' })}import { LiveUpdate } from '@capawesome/capacitor-live-update'
const setNextBundle = async () => { await LiveUpdate.setNextBundle({ bundleId: 'bundle-id-123' })}Appliquer le bundle téléchargé immédiatement
import { CapacitorUpdater } from '@capgo/capacitor-updater'
const applyUpdate = async () => { await CapacitorUpdater.reload()}import { LiveUpdate } from '@capawesome/capacitor-live-update'
const applyUpdate = async () => { await LiveUpdate.reload()}Étape 5 – Stratégies de mise à jour : comment Capgo les gère
Section intitulée « Étape 5 – Stratégies de mise à jour : comment Capgo les gère »Capawesome documente trois stratégies. Voici comment elles se traduisent :
Mises à jour en arrière-plan
Section intitulée « Mises à jour en arrière-plan »- Ancien workflow : configurez dans code et planifiez les téléchargements manuellement.
- Capgo : activé par défaut (
autoUpdate: true). Aucun code supplémentaire requis.
Toujours la dernière version
Section intitulée « Toujours la dernière version »- Ancien workflow : ajoutez un
App.resumeécouteur, appelerdownload, puisset. - Capgo: l'auto-update en arrière-plan effectue déjà la vérification après la reprise. Le listener manuel n'est nécessaire que si vous souhaitez un intervalle personnalisé.
Optionnel : vérification manuelle à la reprise
import { App } from '@capacitor/app'import { CapacitorUpdater } from '@capgo/capacitor-updater'
App.addListener('resume', async () => { const latest = await CapacitorUpdater.getLatest() if (latest?.url) { const downloaded = await CapacitorUpdater.download({ url: latest.url, version: latest.version, }) if (downloaded) { await CapacitorUpdater.next({ id: downloaded.id }) } }})Mise à jour forcée
Section intitulée « Force update »- Ancien workflow: liez la logique du prompt et forcez le reload.
- Capgo: marquez le bundle comme « obligatoire » dans le dashboard, puis écoutez le
majorAvailableévénement (émis aprèsnotifyAppReady()) pour forcer les utilisateurs à mettre à jour l'app.
Étape 6 – Déployer les bundles
Section intitulée « Étape 6 – Déployer les bundles »Si vous comptiez auparavant sur capawesome live-update deploy, Capgo propose un workflow CLI similaire, et vous pouvez aussi automatiser entièrement vos déploiements via API.
# Authenticate once (stores a token in your CI environment)capgo login
# Upload a new bundle (auto-detects platform/version)capgo bundle upload --path dist --channel productionComme Capgo suit automatiquement la santé des bundles, vous bénéficiez aussi de :
- Device-level audit logs for every install.
- Une rétention automatique (un mois par défaut) avec des limites configurables jusqu'à 24 mois.
- Métriques de latence en temps réel sur statut.capgo.app/history.
Chronologie de la migration
Section intitulée « Chronologie de la migration »- Inventaire et installation: 10 min (
npm install, supprimer l'ancien plugin). - Config et préparation: 5 minutes (
notifyAppReady). - Vérifications de cohérence: 15 min (tests manuels ou listeners optionnels).
- Premier déploiement: 10 min avec Capgo CLI ou une intégration CI.
En pratique, les équipes terminent en moins d'une heure. Si vous fournissez les détails de votre projet Capawesome, nous pouvons même importer vos canaux et vos listes d'appareils.
le support Capgo
Section intitulée « support Capgo »- Concierge de migration: réservez une session sur book.capgo.app/demo.
- Communauté: rejoignez le Discord de Capgo.
- Suivi des problèmes: github.com/Cap-go/capacitor-updater/issues.
Capgo est conçu pour une fiabilité à long terme : mises à jour delta natives, bundles chiffrés, rollbacks automatiques et analytics ne nécessitant pas de code JavaScript personnalisé. Une fois la migration terminée, vous pouvez supprimer la couche de glue gourmande en maintenance et laisser la plateforme gérer les mises à jour automatiquement.
Continuer après la migration de Capawesome Cloud vers Capgo
Section intitulée « Continuer après la migration de Capawesome Cloud vers Capgo »Si vous utilisez Migrer de Capawesome Cloud vers Capgo pour planifier l'automatisation CI/CD, et le connecter avec CI/CD Capgo pour le workflow produit dans le CI/CD de Capgo, Capgo Native Build pour le workflow produit dans les Native Builds de Capgo, Intégrations Capgo pour le workflow produit dans les intégrations de Capgo, Intégration CI/CD pour le détail d'implémentation dans l'intégration CI/CD, et Intégration GitHub Actions pour les détails d'implémentation de l'intégration GitHub Actions.