Este tutorial se centra en el CI de GitLab, pero puedes adaptarlo con un pequeño ajuste a cualquier otra plataforma de CI/CD.
Introducción
Asegúrate de haber agregado tu aplicación primero a Capgo, este tutorial solo se enfoca en la fase de carga
Convenio de commit
Primero debes empezar a seguir la convención de commit comits convencionales ` esto ayudará a las herramientas a entender cómo actualizar el número de versión, solo lleva 5 minutos aprenderlo.

GitLab CI para etiquetas
Luego debes crear tu primer GitLab para que se construya 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 agregarla a tus variables de GitLab CI/CD como PERSONAL_ACCESS_TOKEN.
Esto es necesario para que el CI pueda realizar el commit del changelog.
Cuando crees el token, elige la expiración como never y el alcance como repo.
Finalmente, para que la herramienta entienda dónde se encuentra guardada 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 se encargarán de mantenerlo actualizado.
Ahora puedes realizar el commit de ambos archivos y ver cómo aparece tu primer etiqueta en GitHub!
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 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 construirá tu dependencia antes de enviarla a Capgo.
Si tu comando de construcción es diferente, puedes cambiarlo en el build_code paso.
Hacer que esto funcione requiere obtener tu clave de API para Capgo, agregarla en el secreto de tu repositorio de GitHub como Puedes agregar ahora ambos archivos y ver tu primer etiqueta aparecer en __CAPGO_KEEP_0__! CAPGO_TOKEN.
You can now commit this both files and see your first tag appear in GitHub!
Deberías agregar tus pruebas en el paso de construcción para asegurarte de que __CAPGO_KEEP_0__ funciona correctamente.
Ve a tu panel de control de code y verifica tu build que acaba de aparecer, ahora tienes tu sistema CI/CD.
Go To your Capgo dashboard and check your build who just appeared, you now have your CI/CD system.
Si deseas que todos tus usuarios puedan obtener la actualización siempre que esté disponible, ve a tu canal y establecelo en public.