Aller directement au contenu principal

Mise en œuvre automatique des mises à jour en direct de Capgo à partir de Lovable avec GitHub Actions

Une publication Lovable en un clic vers les utilisateurs de production : synchronisez-vous avec GitHub, stockez votre Capgo API clé secrète et laissez GitHub Actions construire et télécharger à chaque push.

Crédits de l'article

Martin Donadieu

Auteur

Valeria

Relecteur

Jordan

Éditeur

Mise en œuvre automatique des mises à jour en direct de Capgo à partir de Lovable avec GitHub Actions

Lorsque votre client souhaite un bouton unique dans Lovable qui envoie des mises à jour à tous les utilisateurs actifs, 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, La publication envoie un commit 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 : ajouter CAPGO_TOKEN comme un secret GitHub. Pour le fichier de flux de travail, copiez-coller l'instruction AI prête dans Lovable (Étape 3).

Comment fonctionne le pipeline

Étape Qui What happens
1 Client Édite l'application dans Lovable et clique sur Publier
2 Lovable Commits and pushes to GitHub (usually main)
3 GitHub Actions npm ci, npm run build, bundle upload --auto-bump to Capgo
4 Capgo Les appareils actifs sur le production reçoivent la mise à jour

No SSH, no local CLI, no extra click after the secret is configured.

Prérequis

  • Projet Lovable connecté à GitHub (guide d'export)
  • Capacitor + @capgo/capacitor-updater dans le dépôt (Guide 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 de Capgo nécessite une nouvelle version de bundle uniqueLovely Publish ne fait pas d'augmentation pour vous, donc la CI échouerait lors du deuxième déploiement si vous réutilisez la même version. package.json Lovely Publish lit la dernière version sur le canal (ou l'application) et l'incrémente. Le niveau par défaut est

--auto-bump Lovely Publish lit la dernière version sur le canal (ou l'application) et l'incrémente. Le niveau par défaut est minorVous pouvez passer --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 de Lovely.

Étape 2 — Ajoutez CAPGO_TOKEN dans GitHub (l'étape de l'environnement unique)

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

  1. Ouvrez le dépôt GitHub que Lovable synchronise
  2. Allez à ParamètresSecrets et variablesActions
  3. Cliquez Nouveau secret de dépôt
  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 de ${{ secrets.CAPGO_TOKEN }}. Le workflow suivant le lit comme variable d'environnement pour le __CAPGO_KEEP_0__ __CAPGO_KEEP_1__. CAPGO_TOKEN environment variable for the Capgo CLI.

leur repo. Vous n'avez besoin que de la clé dans __CAPGO_KEEP_0__, pas dans les paramètres de Lovable. repo. You only need the key in GitHub, not in Lovable settings.

Copiez le bloc suivant dans le chat Lovable. Si votre branch par défaut n'est pas

, remplacez mainpar le nom de votre branch. main Après que Lovable a appliqué la modification, cliquez

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.

Enregistrer Publier de sorte que le flux de travail se termine par GitHub.

Alternative manuelle

Si vous préférez ne pas utiliser la conversation 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 Lovable ont souvent besoin base: './' en vite.config.ts afin que les assets se chargent à l'intérieur de la coquille native. Si les utilisateurs voient une page blanche après une mise à jour OTA, demandez à Lovable de définir base: './', publiez à nouveau, et laissez le flux de travail rédeployer.

Fichiers encapsulés : Si vous utilisez Capgo encryption, ajoutez CAPGO_PRIVATE_KEY GitHub secret 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 label du bouton)
  2. Cliquez Publier
  3. Sur GitHub, ouvrez Actions et regardez Mises à jour en direct Capgo
  4. Lorsque le job est vert, ouvrez votre Mettez à jour votre Capgo console et confirmez une nouvelle version sur le production canal
  5. Sur un appareil avec l'application installée, confirmez que la mise à jour arrive (ce peut prendre une minute en fonction des paramètres du canal)

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

Résolution des problèmes

Symptôme Cause probable Correction
Le workflow ne s'exécute jamais La mise à jour a été envoyée vers une branche autre que main La modification branches dans le workflow ou de publier vers main
CAPGO_TOKEN / erreur d'authentification Le secret manquant ou nom incorrect Le secret doit être exactement CAPGO_TOKEN sous Secrets d'actions
La version existe déjà L'upload a réutilisé la même version de bundle Conservation --auto-bump sur l'étape d'upload (ou passer --auto-bump patch)
Échec de la construction sur npm ci Lockfile hors synchronisation Exécution npm install Localement, commit package-lock.json, publiez à nouveau
L'upload réussit, écran blanc Incorrect webDir ou Vite base Correspondre capacitor.config.ts webDir à l'output de construction (dist pour Vite) et définir base: './'
Les utilisateurs ne voient pas la mise à jour Le canal n'est pas lié à leur build In Capgo, reliez le build du appareil à production ou définissez le canal en public

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

Ce que vous dites à votre client

Envoyez-leur ce checklist :

  1. Vous déjà connecté Lovable à GitHub et configuré Capgo sur l'application mobile.
  2. Ils ajoutent un GitHub secret : CAPGO_TOKEN avec leur Capgo API clé (page d'API clés).
  3. Ils Cliquez Publier dans Lovable chaque fois qu'ils souhaitent que les utilisateurs reçoivent des mises à jour.
  4. Ils ne s'exécutent jamais npx @capgo/cli localement à moins qu'ils ne le souhaitent.

Cela correspond à l'expérience d'un clic unique qu'ils ont demandé : Publier dans Lovable est le bouton ; GitHub Actions et Capgo gèrent le reste.

Continuez

Mises à jour en temps réel pour les applications Capacitor

Quand un bug de la couche web est en direct, expédiez la correction par le biais de Capgo au lieu d'attendre des jours pour l'approbation de la boutique d'applications. Les utilisateurs reçoivent la mise à jour en arrière-plan tandis que les modifications natives restent dans le chemin de revue normal.

Un soutien humain de la part 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 véritablement professionnelle.