Pasar al contenido principal
CI/CD

Construcción automática y lanzamiento con Gitlab

Crea tu propio pipeline CI/CD con Gitlab de forma gratuita, despliega tu aplicación cada vez que pulses en main.

Martin Donadieu

Martin Donadieu

Gerente de Contenido

Construcción automática y lanzamiento con Gitlab

Este tutorial se centra en el CI de GitLab, pero puedes adaptarlo con un pequeño ajuste a cualquier otra plataforma CI/CD.

Introducción

Asegúrate de haber agregado tu aplicación primero a Capgo, este tutorial solo se centra en la fase de carga

Convenio de commit

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

Comentarios convencionales

CI de GitLab para etiqueta

Luego debes crear tu primer GitLab para que se edite automáticamente y cree una etiqueta.

Crea un archivo en este camino: .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 liberará una etiqueta para cada commit en tu rama principal. Y agregará una entrada de cambio para cada commit en la rama principal en CHANGELOG.md.

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

Para que esto funcione, crea un TOKEN DE ACCESO PERSONAL y agrega a tus variables de CI/CD de GitLab como PERSONAL_ACCESS_TOKEN.

Esto es necesario para que el CI pueda cometer el changelog.

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

Por último, para que la herramienta entienda dónde se encuentra tu versión, debes crear el archivo .cz.toml en la raíz de tu repositorio.

Y agrega esto dentro:

[tool.commitizen]
name = "cz_conventional_commits"
tag_format = "$major.$minor.$patch$prerelease"
version = "0.11.5"
version_files = [
    "package.json:version",
    ".cz.toml"
]

Establece la versión en este archivo como la misma que tienes en tu package.json archivo.

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

Puedes ahora cometer ambos archivos y ver tu primer etiqueta aparecer en GitHub!

GitHub acciones para construir

Crea 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

This will install and build your dependency before sending it to 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 secretario de su repositorio de GitHub como CAPGO_TOKEN.

Puede ahora agregar estos dos archivos y ver su primer etiqueta aparecer en GitHub!

La adición del commit generará un nuevo build para el canal de producción.

Debería agregar sus pruebas en el paso de compilación para asegurarse de que code está funcionando.

Vaya a su panel de control de Capgo y verifique su build que acaba de aparecer, ahora tiene su sistema CI/CD.

Si desea que todos sus usuarios obtengan la actualización siempre que esté disponible, vaya a su canal y establezca a public.

Siga adelante desde la compilación y liberación automática con Gitlab

Si estás utilizando Construcción y lanzamiento automáticos 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 de CI/CD para el detalle de implementación en Integración de CI/CD, y GitHub Integración de Acciones para los detalles de implementación en GitHub Acciones de Integración.

Actualizaciones en vivo para Capacitor aplicaciones

Cuando un error en la capa web está activo, 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 le da las mejores pistas que necesita para crear una aplicación móvil verdaderamente profesional.