CI/CD

Verwalte Entwicklungs- und Produktionsbuilds mit GitHub-Aktionen

Verwenden Sie Capgo, um Ihr Entwicklungsbuild an einen bestimmten Kanal freizugeben, und lassen Sie Ihr Team Ihre Capacitor Ionic-App ausprobieren, ohne auf die Überprüfung durch Apple und Google zu warten.

Martin Donadieu

Martin Donadieu

Content Marketer

Verwalte Entwicklungs- und Produktionsbuilds mit GitHub-Aktionen

Dieses Tutorial konzentriert sich auf das Hosting von GitHub, aber Sie können es mit einer kleinen Anpassung auf jede andere CI/CD-Plattform anpassen.

Vorwort

Stellen Sie sicher, dass Sie Ihre Capacitor-App zuerst zu Capgo hinzugefügt haben, dieses Tutorial konzentriert sich nur auf die Upload-Phase.

Commit-Konvention

Zuerst müssen Sie die Commit-Konvention konventionelle Commits folgen, dies wird den Tools helfen zu verstehen, wie die Versionsnummer aktualisiert wird, es dauert 5 Minuten, um es zu lernen.

Konventionelle Commits

GitHub-Aktionen für Tags

Dann müssen Sie Ihre erste GitHub-Aktion erstellen, um automatisch zu bauen und Tags zu erstellen.

Erstellen Sie eine Datei unter diesem Pfad: .github/workflows/bump_version.yml

mit diesem Inhalt:

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@v4
with:
fetch-depth: 0
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

Dies wird ein Tag für jedes Commit in Ihrem Hauptbranch freigeben. Und ein alpha Release für development, und schließlich einen Changelog-Eintrag für jedes Commit in CHANGELOG.md.

Keine Sorge, wenn Sie diese Datei nicht haben, sie wird für Sie erstellt.

Um dies zum Laufen zu bringen, müssen Sie ein PERSONAL ACCESS es in Ihrem GitHub secret als PERSONAL_ACCESS_TOKEN erstellen.

Dies ist notwendig, um die CI zu ermöglichen, den Changelog und den Versionssprung zu committen.

Wenn Sie den Token erstellen, wählen Sie als Ablaufdatum nie und den Scope als repo.

Setzen Sie den version Schlüssel in Ihrer package.json Datei. Verwenden Sie dafür die letzte im Store veröffentlichte Version.

Dies ist nur beim ersten Mal notwendig, dann halten die Tools es auf dem neuesten Stand.

Sie können jetzt beide Dateien committen und sehen, wie Ihr erstes Tag in GitHub erscheint!

capacitor-standard-version ist das Paket, das die Magie vollbringt; standardmäßig aktualisiert es auch Ihre Versionsnummer in Android und iOS.

GitHub-Aktionen für Build

Erstellen Sie eine Datei unter diesem Pfad: .github/workflows/build.yml

mit diesem Inhalt:

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@v4
- 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

Dies wird Ihre Abhängigkeit installieren und bauen, bevor es an Capgo gesendet wird.

Wenn Ihr Befehl zum Bauen anders ist, können Sie ihn im Schritt build_code ändern.

Wenn Sie eine Umgebungsvariable benötigen, verwenden Sie MY_ENV_VAR und setzen Sie das secret in Ihren GitHub-Projekt-Einstellungen, dann Geheimnis und dann GitHub Action.

Um das Hochladen an Capgo zum Funktionieren zu bringen, müssen Sie Ihren API-Schlüssel für Capgo erhalten und ihn im Secret Ihres GitHub-Repositories als CAPGO_TOKEN hinzufügen.

Sie können jetzt beide Dateien committen und sehen, wie Ihre erste Version in Capgo erscheint!

Der Commit wird einen neuen Capacitor-Build für den Produktions- und Entwicklungsbranch generieren.

Sie sollten Ihren Test im Ionic-Bausschritt hinzufügen, um sicherzustellen, dass Ihr Code funktioniert.

Gehen Sie zu Ihrem Capgo-Dashboard und überprüfen Sie Ihren Build, der gerade erschienen ist; Sie haben nun Ihr CI/CD-System.

Sofortige Updates für CapacitorJS Apps

Pushen Sie Updates, Fixes und Funktionen sofort auf Ihre CapacitorJS-Apps ohne App Store Verzögerungen. Erleben Sie nahtlose Integration, Ende-zu-Ende-Verschlüsselung und Echtzeit-Updates mit Capgo.

Jetzt starten

Neueste Nachrichten

Capgo bietet Ihnen die besten Einblicke, die Sie benötigen, um eine wirklich professionelle mobile App zu erstellen.

2-Wege-Kommunikation in Capacitor Apps
Development,Mobile,Updates
April 26, 2025

2-Wege-Kommunikation in Capacitor Apps

5 häufige Fehler bei OTA-Updates, die Sie vermeiden sollten
Development,Security,Updates
April 13, 2025

5 häufige Fehler bei OTA-Updates, die Sie vermeiden sollten