Saltar al contenido principal
CI/CD

Gestionar la construcción de desarrollo y producción con acciones de GitHub

Utilice Capgo para liberar su devbuild en un canal específico, y permita a su equipo probar su Capacitor aplicación Ionic sin tener que esperar la revisión de Apple y Google

Créditos del artículo

Martin Donadieu

Escritor

Valeria

Revisor

Jordan

Editor

Gestionar la construcción de desarrollo y producción con acciones de GitHub

Esta guía se centra en la GitHub de alojamiento, pero puedes adaptarlo con un pequeño ajuste a cualquier otra plataforma de CI/CD.

Antecedente

Asegúrate de haber agregado primero tu aplicación Capacitor a Capgo, esta guía solo se centra en la fase de carga

Convención de commit

Primero debes empezar a seguir la convención de commit Ámbito: Página/área: Capgo Builder / producto de construcción nativa en la nube. Rol: Etiqueta de navegación corta o elemento UI. Mensaje clave `native_build_builder_credit_first` (Crédito del constructor de construcción nativa).Comités convencionales

` esto te ayudará a que las herramientas entiendan cómo actualizar el número de versión, es de 5 minutos para aprenderlo.

GitHub actions for tag

GitHub acciones para etiquetas

Luego debes crear tu primera acción __CAPGO_KEEP_0__ para construir automáticamente y crear etiquetas. .github/workflows/bump_version.yml

Crear un archivo en este camino: con este contenido:

name: Bump version

on:
  push:
    branches:
      - main
      - development

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
        if: github.ref == 'refs/heads/main'
        run: npx capacitor-standard-version
      - name: Create bump and changelog
        if: github.ref != 'refs/heads/main'
        run: npx capacitor-standard-version --prerelease alpha
      - 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 un alpha lanzamiento para development, y por último una entrada de registro de cambios para cada commit en CHANGELOG.md.

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

Para que esto funcione, debes crear un TOKEN DE ACCESO PERSONAL y agregarlo a tus GitHub secretos como PERSONAL_ACCESS_TOKEN.

Esto es necesario para permitir que el CI cometa el registro de cambios y el aumento de versión.

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

Establezca la version clave en su package.json archivo. Utilice para eso la última versión lanzada en La tienda.

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

Puede ahora enviar a comité estos dos archivos y ver su primera etiqueta aparecer en GitHub!

capacitor-standard-version es el paquete que hace la magia, por defecto, también actualiza su número de versión en Android e IOS

GitHub acciones 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 build
        env:
          MY_ENV_VAR: ${{ secrets.MY_ENV_VAR }}
      - name: Create Release Alpha
        if: "contains(github.ref, '-alpha.')"
        id: create_release_prepro
        run: npx @capgo/cli@latest bundle upload -a ${{ secrets.CAPGO_TOKEN }} -c development
      - name: Create Release Production
        if: "!contains(github.ref, '-alpha.')"
        id: create_release_prod
        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 de compilación es diferente, puede cambiarlo en el build_code paso.

Si necesita una variable de entorno, utilice el MY_ENV_VAR y establezca el secret en su proyecto de configuración GitHub, luego secreto luego GitHub Acción.

Para hacer que Capgo suba, necesita obtener su API clave para Capgo, agregue en el secreto de su repositorio de GitHub como CAPGO_TOKEN.

Puede ahora comprometer ambos archivos y ver su primera versión aparecer en Capgo!

Agregar el commit generará una nueva compilación de Capacitor para el canal de producción y desarrollo.

Debería agregar sus pruebas en el paso de compilación de Ionic para estar seguro de que code funciona.

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

Siga adelante desde Gestión de compilación de desarrollo y producción con GitHub acciones

If you are using Gestiona la construcción de desarrollo y producción con acciones de GitHub para planificar la ruta de canal y el lanzamiento en etapas, conecta con Canales para obtener detalles de implementación en Canales, Canales para obtener detalles de implementación en Canales, Canales para obtener detalles de implementación en Canales, Solución de Pruebas Beta para el flujo de trabajo del producto en Solución de Pruebas Beta, y Solución de Alcance de Versión para el flujo de trabajo del producto en la Solución de Alcance de Versión.

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.

soporte humano de Martin

Iniciar ahora

Últimas noticias de nuestro Blog

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