Saltar al contenido principal
CI/CD

Crear una aplicación de compilación y lanzamiento automático con GitLab

Crea tu propio pipeline de CI/CD con GitLab de forma gratuita, despliega tu aplicación Ionic Capacitor JS cada vez que hagas push a main.

Anik Dhabal Babu

Anik Dhabal Babu

Gerente de contenido

Crear una aplicación de compilación y lanzamiento automático con GitLab

Este artículo te guiará en cómo configurar el pipeline de CI/CD con GitLab.

Introducción

Asegúrate de haber agregado tu aplicación Capacitor primero a Capgo, este tutorial solo se enfoca en la fase de carga. Si necesitas agregar tu aplicación a Capgo, puedes seguir este Tutorial.

Convención de commit

Primero debes empezar a seguir la convención de commit comits convencionales` esto ayudará a la herramienta a entender cómo actualizar el número de versión, solo lleva 5 minutos aprenderlo.

Comits convencionales

GitLab CI/CD para Etiqueta

Crear un archivo `.gitlab-ci.yml` en la raíz de tu repositorio de GitLab con el siguiente contenido

 stages:
      - tag

 bump_version:
   stage: tag
   only:
     - main
  except:
    variables:
  - $CI_COMMIT_MESSAGE =~ /^chore\(release\):/
  script:
   - git config --global user.email "gitlab@yourdomain.com"
   - git config --global user.name "GitLab CI/CD"
   - git checkout $CI_COMMIT_REF_NAME
   - git pull origin $CI_COMMIT_REF_NAME
   - npx capacitor-standard-version
   - git push origin $CI_COMMIT_REF_NAME --tags

Sustituye `gitlab@tu dominio.com` y `GitLab CI/CD` con tu correo electrónico de GitLab y nombre de usuario en la sección de script. Esta configuración desencadena el trabajo solo en las actualizaciones de la rama principal y excluye los commits con mensajes que comienzan con `chore(release):`.

GitLab CI/CD para Compilación

Agregar otra etapa a tu archivo `.gitlab-ci.yml` para la compilación:

    stages:
      - deploy

   deploy:
     stage: deploy
     only:
       - tags  # This job will only run for tag pushes
     script:
       - apt-get update -qy && apt-get install -y nodejs npm
       - npm install -g @capgo/cli
       - npm ci
       - npm run build
       - npx @capgo/cli bundle upload -a $CAPGO_TOKEN -c production
     variables:
       FIREBASE_CONFIG: $FIREBASE_CONFIG  # Define this in your GitLab project settings
     environment:
       name: production

Ensure you have your Capgo API key (CAPGO_TOKEN) added as a variable de CI/CD in tu proyecto de GitLab. Ve a tu proyecto en GitLab, navega a Configuración > CI/CD > Variables, y agrega una variable llamada CAPGO_TOKEN con el valor de tu API clave.

Personaliza el script de compilación para adaptarlo a tu proceso de compilación específico del proyecto, como cambiar el comando de compilación npm.

Conclusión

¡Eso es todo! Tomamos un paso extra en nuestro viaje tecnológico. En el desarrollo de software moderno, el CICD es un factor esencial que debe considerarse. Espero que esta guía tenga sentido para todos.

Sigue adelante desde la aplicación de compilación y lanzamiento automático con GitLab

Si estás utilizando Compilación y lanzamiento automático con GitLab para planificar la automatización de CI/CD, conecta con 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 Acciones de Integración para el detalle de implementación en GitHub Acciones de Integración.

Actualizaciones en vivo para aplicaciones Capacitor

Cuando un error en la capa web está en vivo, envía 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 reciben la actualización en segundo plano mientras los cambios nativos siguen en el camino de revisión normal.

Soporte humano de Martin

Comienza ahora

Últimas noticias de nuestro Blog

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