Passer à la navigation principale
CI/CD

Automate Capgo Live Updates from Lovable with GitHub Actions

Une publication Lovable en un clic vers les utilisateurs de production : synchronisez avec GitHub, stockez votre Capgo API secret et laissez les actions d'GitHub construire et uploader à chaque push.

Automate Capgo Live Updates from Lovable with GitHub Actions

Votre client souhaite un bouton unique dans Lovable qui envoie les modifications à chaque utilisateur actif. Vous avez déjà prouvé que le chemin de mise à jour fonctionne manuellement :

npx @capgo/cli@latest bundle upload --channel=production --auto-bump

La pièce manquante n'est pas une autre commande de terminal à l'intérieur de Lovable. Lovable ne peut pas exécuter Capgo lors de la publication. Lorsque la synchronisation GitHub est activée, Publiez les push vers votre dépôt. GitHub Actions exécute la construction et bundle upload pour vous.

Cette guide couvre la seule configuration manuelle que votre client doit effectuer une fois : ajoutez CAPGO_TOKEN comme un GitHub secret. Pour le fichier de flux de travail, copiez-colliez l'instruction AI prête dans Lovable (Étape 3).

Comment fonctionne le pipeline

Étape Qui Ce qui se passe
1 Client Édite l'application dans Lovable et clique sur Publier
2 Lovable Commits et pousses vers GitHub (généralement main)
3 GitHub Actions npm ci, npm run build, bundle upload --auto-bump vers Capgo
4 Capgo Les appareils actifs sur le production reçoivent la mise à jour

Aucun SSH, aucune CLI locale, pas de clic supplémentaire après la configuration du secret.

Prérequis

  • Projet Lovable connecté à GitHub (guide d'export)
  • Capacitor + @capgo/capacitor-updater dans le dépôt (Guide de Lovable vers mobile)
  • L'application est enregistrée dans Capgo avec capacitor.config.ts pointant vers la bonne appId
  • production Le canal existe et est lié aux builds que vos utilisateurs exécutent

Pourquoi --auto-bump

Chaque téléchargement Capgo nécessite une nouvelle version unique du bundleLovable Publish ne fait pas d'incrémentation pour vous, donc la CI échouerait au deuxième déploiement si vous réutilisez la même version. package.json lit la dernière version sur le canal (ou l'application) et l'incrémente. Le niveau par défaut est

--auto-bump Vous pouvez passer minorLovable Publish ne fait pas d'incrémentation pour vous, donc la CI échouerait au deuxième déploiement si vous réutilisez la même version. --auto-bump patch ou --auto-bump major si vous préférez.

Étape 1 — Créez une clé Capgo API

  1. Ouvrez console.capgo.app/apikeys/
  2. Créez une clé API avec la permission d'uploader des bundles pour votre application
  3. Copiez la clé une fois. Vous ne la verrez pas à nouveau dans sa valeur complète

Traitez cette clé comme un mot de passe. Ne la commettez jamais dans Git ou n'y collez pas dans le chat Lovable.

Étape 2 — Ajoutez CAPGO_TOKEN dans GitHub (la seule étape d'environnement)

C'est l'étape que vous envoyez à Kuldeep et à tout client qui possède le dépôt.

  1. Ouvrez le dépôt Lovable GitHub
  2. Allez à ParamètresSecrets et variablesActions
  3. Cliquez Nouveau secret de repository
  4. Nom : CAPGO_TOKEN
  5. Valeur : collez la clé Capgo API de l'étape 1
  6. Enregistrer

GitHub injecte le secret dans les workflows sous la forme ${{ secrets.CAPGO_TOKEN }}Le workflow ci-dessous le lit comme la variable d'environnement pour le __CAPGO_KEEP_0__ __CAPGO_KEEP_1__. CAPGO_TOKEN environment variable for the Capgo CLI.

If le dépôt est sous l'organisation de votre client, ils doivent ajouter le secret sur leur repo. Vous n'avez besoin que de la clé dans GitHub, pas dans les paramètres de Lovable.

Étape 3 — Collez cette prompt dans Lovable

Copiez le bloc ci-dessous dans le chat de Lovable. Si votre branch par défaut n'est pas mainremplacez main dans le workflow par le nom de votre branch.

Add Capgo Live Updates CI with GitHub Actions.

Create `.github/workflows/capgo-live-updates.yml` (create folders if needed). Start from this YAML, then adapt install/build to this project while keeping Capgo upload + CAPGO_TOKEN secret behavior:

name: Capgo Live Updates

on:
  push:
    branches:
      - main

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v6

      - name: Setup Node.js
        uses: actions/setup-node@v6
        with:
          node-version: '24'
          cache: 'npm'

      - name: Install and build
        run: |
          npm ci
          npm run build

      - name: Upload bundle to Capgo
        run: npx @capgo/cli@latest bundle upload --channel=production --auto-bump
        env:
          CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}

Rules:
- Do not hardcode any Capgo API key in the repo or in chat.
- The workflow must read CAPGO_TOKEN only from GitHub Actions secrets (`${{ secrets.CAPGO_TOKEN }}`).
- Keep `--auto-bump` on the upload command so each Publish gets a new unique bundle version.
- Prefer the project's real production build script from package.json (for example `npm run build` or `vite build`).
- If package-lock.json is missing, use `npm install` instead of `npm ci`.
- Do not modify app UI or Capacitor config for this task.
- Commit the workflow file so the next Publish pushes it to GitHub.

Après que Lovable a appliqué la modification, cliquez Publier afin que le workflow atterrisse sur GitHub.

Alternative manuelle

Si vous préférez ne pas utiliser le chat de Lovable, créez .github/workflows/capgo-live-updates.yml avec ce YAML uniquement (pas la prose du prompt). Adaptsez les étapes d'installation/ de construction de la même manière que les règles ci-dessus si votre projet diffère, puis commitez et publiez.

name: Capgo Live Updates

on:
  push:
    branches:
      - main

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v6

      - name: Setup Node.js
        uses: actions/setup-node@v6
        with:
          node-version: '24'
          cache: 'npm'

      - name: Install and build
        run: |
          npm ci
          npm run build

      - name: Upload bundle to Capgo
        run: npx @capgo/cli@latest bundle upload --channel=production --auto-bump
        env:
          CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}

Vite base chemin : Les applications Vite aimables ont souvent besoin de base: './' dans vite.config.ts afin que les assets se chargent à l'intérieur de la coquille native. Si les utilisateurs voient une écran blanc après une mise à jour OTA, demandez à Lovable de définir base: './'publiez à nouveau, et laissez le workflow redeploier.

Fichiers encapsulés : Si vous utilisez Capgo encryptionajoutez CAPGO_PRIVATE_KEY GitHub secret secondaire et passez --key-data-v2 "${{ secrets.CAPGO_PRIVATE_KEY }}" sur l'étape de téléchargement.

Étape 4 — Confirmer la publication déclenche un déploiement

  1. Dans Lovable, apportez une petite modification visible (par exemple, le texte du libellé du bouton)
  2. Cliquez Publiez
  3. On GitHub, open Actions et regardez Capgo Mises à jour en temps réel
  4. contexte : Page/zone : Page de produit de mise à jour en temps réel. Rôle : Étiquette de navigation ou élément de l'interface utilisateur court. Vu dans : page live-update.astro. Préservez les termes de produit/marque et les termes de développeur exactement. Clé de message `live_update_hero_badge` (Étoile de la mise à jour en temps réel). Capgo console console de __CAPGO_KEEP_0__ et confirmez une nouvelle version du bundle sur la production chaîne
  5. Sur un appareil avec l'application installée, confirmez que le changement arrive (ce qui peut prendre une minute en fonction des paramètres de la chaîne)

Réussi : Publiez dans Lovable → vert GitHub Action → nouveau bundle dans Capgo → les utilisateurs reçoivent la mise à jour.

Résolution des problèmes

context : Page/zone : Support / page de support premium ou section de support du pied de page. Rôle : En-tête de section ou de page. Vu dans : page support-policy.astro. Clé de message `support_policy_troubleshooting_title` (Titre de la politique de support pour la résolution des problèmes) Symptôme Cause probable
Correction Flux de travail ne s'exécute jamais main La mise à jour a été envoyée vers une branche autre que branches Changement dans le flux de travail ou publication vers main
CAPGO_TOKEN / erreur d'authentification Le secret manquant ou le nom incorrect Le secret doit être exactement CAPGO_TOKEN sous Actions secrets
La version existe déjà L'upload a réutilisé la même version du bundle Conservation --auto-bump sur l'étape d'upload (ou passez --auto-bump patch)
La construction faille sur npm ci Le fichier de verrouillage hors synchronisation Exécution npm install localement, puis commit package-lock.json, publiez à nouveau
L'upload réussit, écran blanc Erreur webDir ou Vite base Correspondre capacitor.config.ts webDir à la sortie de build (dist pour Vite) et définir base: './'
Les utilisateurs ne voient pas l'update Le canal n'est pas lié à leur build Dans Capgo, reliez le build du dispositif à production ou définissez le canal en public

Pour plus de modèles de workflow (branches de fonctionnalité, canaux de PR, encryption), voir Intégration GitHub Actions.

Ce que vous dites à votre client

Envoyez-leur ce checklist :

  1. Vous connecté Lovable à GitHub et configuré Capgo sur l'application mobile.
  2. Ils ajoutent une clé secrète GitHub : CAPGO_TOKEN avec leur Capgo API clé (page apikeys).
  3. Ils cliquent Publier dans Lovable chaque fois qu'ils le souhaitent, les utilisateurs reçoivent les mises à jour.
  4. Ils ne s'exécutent jamais npx @capgo/cli sauf s'ils le veulent.

That matches the single-click experience they asked for: Publish in Lovable is the button; GitHub Actions and Capgo handle the rest.

Continuez

Mises à jour en direct pour les applications Capacitor

Lorsqu'un bug de la couche web est en ligne, expédiez la correction par Capgo au lieu d'attendre des jours pour l'approbation des magasins d'applications. Les utilisateurs reçoivent la mise à jour en arrière-plan tandis que les modifications natives restent dans la voie de revue normale.

Support humain de Martin

Démarrer maintenant

Dernières actualités de notre Blog

Capgo vous donne les meilleures informations dont vous avez besoin pour créer une application mobile vraiment professionnelle.