In diesem Artikel erfährst du, wie du eine CI/CD-Pipeline mit GitLab aufsetzt.
Einleitung
Stelle sicher, dass du deine Capacitor App zuerst zu Capgo hinzugefügt hast; dieses Tutorial konzentriert sich nur auf die Upload-Phase. Falls du deine App zu Capgo hinzufügen möchtest, folge diesem Tutorial.
Commit-Konvention
Zuerst solltest du mit der Einhaltung der Commit-Konvention beginnen Conventional Commits` hilft den Tools dabei, die Versionsnummer automatisch zu aktualisieren. Das Lernen dauert nur 5 Min.

GitLab CI/CD für Tags
Erstelle eine .gitlab-ci.yml-Datei im Root deines GitLab-Repositorys mit folgendem Inhalt
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
Ersetze „gitlab@yourdomain.com“ und „GitLab CI/CD“ im Script-Bereich durch deine GitLab-E-Mail und deinen Benutzernamen. Diese Konfiguration triggert den Job nur bei Pushes auf den main-Branch und schließt Commits mit Nachrichten aus, die mit „chore(release):“ beginnen.
GitLab CI/CD für Builds
Füge deiner .gitlab-ci.yml Datei eine weitere Stage für den Build hinzu:
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
Stelle sicher, dass dein Capgo API Key (CAPGO_TOKEN) als CI/CD-Variable in deinem GitLab-Projekt hinterlegt ist. Gehe in GitLab zu deinem Projekt, navigiere zu Settings > CI/CD > Variables und füge eine Variable namens CAPGO_TOKEN mit deinem API Key-Wert hinzu.
Passe das Build-Script an den spezifischen Build-Prozess deines Projekts an, zum Beispiel durch Ändern des npm run build Befehls.
Fazit
Geschafft! Wir haben einen weiteren Schritt auf unserer Tech-Reise gemacht. In der modernen Softwareentwicklung ist CI/CD ein essenzieller Faktor. Ich hoffe, dass diese Anleitung für alle hilfreich ist.
Weiter von Automatic build and release app with GitLab
Wenn Sie ... verwenden Automatischer App-Build und Release mit GitLab hin zu CI/CD-Automatisierungsplänen und der Anbindung an Capgo CI/CD-Setup für den Produkt-Workflow in Capgo CI/CD, Capgo Native Builds für den Produkt-Workflow in Capgo Native Builds, Capgo Integrationen für den Produkt-Workflow in Capgo Integrationen, CI/CD-Integration für die Implementierungsdetails in der CI/CD-Integration, und GitHub Actions-Integration für die Implementierungsdetails in der GitHub Actions-Integration.