Saltar al contenido principal
CI/CD

Crear una aplicación de compilación y lanzamiento automática con Github acciones

Crea tu propio pipeline de CI/CD con Github acciones gratuitas, y lanza tu aplicación Ionic Capacitor JS cada vez que subas a main.

Martin Donadieu

Martin Donadieu

Gerente de Contenido

Crear una aplicación de compilación y lanzamiento automática con Github acciones

This tutorial focuses on the GitHub hosting, but you can adapt it with little tweak to any other CI/CD platform.

Introducción

Be sure you have added your Capacitor app first to Capgo, this tutorial just focuses on the upload phase. If you need to add your app to Capgo, you can follow this Tutorial

Convención de commit

First you need to start following the commit convention Comités convencionales` this will help the tooling understand how to upgrade the version number, it’s 5 min to learn it.

Comités convencionales

GitHub actions for tag

Then you have to create your first GitHub action to automatically build and create tag.

Crear un archivo en este path: .github/workflows/bump_version.yml

con este contenido:

name: Bump version

on:
  push:
    branches:
      - main

jobs:
  bump-version:
    if: "!startsWith(github.event.head_commit.message, 'chore(release):')"
    runs-on: ubuntu-latest
    name: "Bump version and create changelog with standard version"
    steps:
      - name: Check out
        uses: actions/checkout@v6
        with:
          fetch-depth: 0
          filter: blob:none
          token: '${{ secrets.PERSONAL_ACCESS_TOKEN }}'
      - name: Git config
        run: |
          git config --local user.name "github-actions[bot]"
          git config --local user.email "github-actions[bot]@users.noreply.github.com"
      - name: Create bump and changelog
        run: npx capacitor-standard-version
      - name: Push to origin
        run: |
          CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
          remote_repo="https://${GITHUB_ACTOR}:${{ secrets.PERSONAL_ACCESS_TOKEN }}@github.com/${GITHUB_REPOSITORY}.git"
          git pull $remote_repo $CURRENT_BRANCH
          git push $remote_repo HEAD:$CURRENT_BRANCH --follow-tags --tags

Esto lanzará una etiqueta para cada commit en tu rama principal. Y agregará una entrada de changelog para cada commit en la rama principal en CHANGELOG.md.

No te preocupes si no tienes este archivo, se creará para ti.

Para que esto funcione, crea un TOKEN DE ACCESO PERSONAL y agrega a tus GitHub secretos como PERSONAL_ACCESS_TOKEN.

Esto es necesario para permitir que el CI cometa el changelog.

Cuando crees el token, elige expiración como never y el alcance como repo.

Por último, establezca la versión en su package.json archivo, sincrónelo con su número de versión nativa que facilitará, luego el siguiente paso.

Esto solo es necesario la primera vez, luego las herramientas lo mantendrán actualizado.

Puede ahora cometer ambos archivos y ver su primer etiqueta aparecer en GitHub!

Ambas plataformas nativa y web tendrán el número de versión actualizado después de cada commit.

Acciones de GitHub para la compilación

Crear un archivo en este camino: .github/workflows/build.yml

con este contenido:

name: Build source code and send to Capgo

on:
  push:
    tags:
      - '*'
      
jobs:
  deploy:
    runs-on: ubuntu-latest
    name: "Build code and release"
    steps:
      - name: Check out
        uses: actions/checkout@v6
      - name: Install dependencies
        id: install_code
        run: npm i
      - name: Build
        id: build_code
        run: npm run build
        env: # Remove both lines  if you don't need it
          FIREBASE_CONFIG: ${{ secrets.FIREBASE_CONFIG }} # Example of env var coming from a secret
      - name: Create Release
        id: create_release
        run: npx @capgo/cli@latest bundle upload -a ${{ secrets.CAPGO_TOKEN }} -c production

Esto instalará y compilará su dependencia antes de enviarla a Capgo.

Si su comando para la compilación es diferente, puede cambiarlo en el build_code paso.

Para que esto funcione, necesita obtener su clave de API para Capgo, agregarla en el el secreto de tu repositorio GitHub como CAPGO_TOKEN.

Puedes ahora cometer estos dos archivos y ver tu primera etiqueta aparecer en GitHub!

La adición del commit generará una nueva compilación para el canal de producción.

Deberías agregar tu prueba en el paso de compilación para asegurarte de que code está funcionando.

Ve a tu panel de control de Capgo y verifica tu compilación que acaba de aparecer, ahora tienes tu sistema de CI/CD.

Si deseas que todos tus usuarios obtengan la actualización siempre que esté disponible, ve a tu canal y establecelo en public.

Puedes agregar también la compilación nativa de tu aplicación de Ionic Capacitor JavaScript siguiendo este tutorial 👇

Sigue adelante desde la compilación y liberación automática de la aplicación con acciones de Github

Si estás utilizando Compilación y liberación automática de la aplicación con acciones de Github para planificar la automatización de CI/CD, conecta con él Capgo CI/CD para el flujo de trabajo del producto en Capgo CI/CD Capgo Compilaciones Nativas para el flujo de trabajo del producto en Capgo Compilaciones Nativas Capgo Integraciones para el flujo de trabajo del producto en Capgo Integraciones Integración CI/CD para el detalle de implementación en Integración CI/CD, y GitHub Integración de Acciones para el detalle de implementación en GitHub Integración de Acciones

Actualizaciones en vivo para aplicaciones Capacitor

Cuando un error de capa web está en vivo, envíe la corrección a través de Capgo en lugar de esperar días para la aprobación de la tienda de aplicaciones. Los usuarios obtienen la actualización en segundo plano mientras los cambios nativos siguen en el camino de revisión normal.

Comienza Ahora

Últimas noticias de nuestro Blog

Capgo te brinda las mejores perspectivas que necesitas para crear una aplicación móvil verdaderamente profesional.