Führen Sie in Bitbucket die @lingo.dev/cli in einem Pipeline-Schritt aus: Installieren Sie die CLI, führen Sie lingo push aus, um geänderte Quellstrings über Ihre Engine zu übersetzen, und committen Sie anschließend die Ergebnisse oder öffnen Sie mit den Bitbucket-Tools einen Pull Request.
Voraussetzungen
Sie benötigen eine eingecheckte .lingo/config.json (mit einer engineId, Quell- und Zielsprachen sowie files-Mustern) und Ihren als Repository-Variable gespeicherten Lingo.dev-API-Schlüssel. Wie Sie die Konfiguration erstellen, erfahren Sie im CLI-Schnellstart.
Authentifizierung#
Die CLI authentifiziert sich über die Umgebungsvariable LINGO_API_KEY. Legen Sie Ihren Schlüssel als gesicherte Repository-Variable an, damit er in Pipeline-Schritten verfügbar ist:
Repository settings > Repository variables — fügen Sie LINGO_API_KEY hinzu und markieren Sie die Variable als gesichert.
Um Commits zurück ins Repository zu pushen oder Pull Requests zu öffnen, benötigt die Pipeline außerdem Git-Schreibzugriff. Die gängigen Optionen sind ein Repository-SSH-Schlüssel (Repository settings > SSH keys) oder ein Repository-Access-Token mit dem Scope Read & write repositories (und pull requests für den PR-Modus), gespeichert als gesicherte Repository-Variable, zum Beispiel BB_TOKEN.
Workflow-Beispiele#
Direkter Commit (Standard)#
Installieren Sie die CLI, führen Sie lingo push aus und committen Sie die übersetzten Dateien zurück in den Branch:
image: node:22
pipelines:
branches:
main:
- step:
name: Translate
script:
- npm install -g @lingo.dev/cli
- lingo push
- git config user.name "lingo-bot"
- git config user.email "support@lingo.dev"
- git add .
- git diff --cached --quiet || git commit -m "chore: update translations"
- git push origin HEAD:mainlingo push übersetzt nur die Änderungen seit dem letzten Lauf (nachverfolgt in .lingo/lock.json), wartet, bis der Lauf abgeschlossen ist, und schreibt die Ergebnisse auf die Festplatte.
Pull-Request-Modus#
Pushen Sie die Übersetzungen in einen dedizierten Branch, statt sie nach main zu committen, und öffnen Sie anschließend mit den Bitbucket-Tools einen Pull Request:
image: node:22
pipelines:
branches:
main:
- step:
name: Translate
script:
- npm install -g @lingo.dev/cli
- lingo push
- git config user.name "lingo-bot"
- git config user.email "support@lingo.dev"
- git checkout -b lingo/translations
- git add .
- git diff --cached --quiet || git commit -m "feat: update translations"
- git push origin lingo/translations
# Open a PR from lingo/translations into main via the Bitbucket UI or APIMonorepo#
Führen Sie die CLI aus einem Unterverzeichnis aus, wenn sich Ihre Konfiguration innerhalb eines Workspace befindet. Die CLI löst .lingo/config.json relativ zum Arbeitsverzeichnis auf:
image: node:22
pipelines:
branches:
main:
- step:
name: Translate
script:
- cd apps/web
- npm install -g @lingo.dev/cli
- lingo pushPipeline-Variablen#
| Variable | Erforderlich | Beschreibung |
|---|---|---|
LINGO_API_KEY | Ja | Lingo.dev-API-Schlüssel. Als gesicherte Repository-Variable speichern. |
BB_TOKEN | Für Push-/PR-Schreibzugriff | Repository-Access-Token (oder SSH-Schlüssel), das Git zum Committen oder Öffnen von Pull Requests verwendet. |
Alles andere — Quellsprache, Zielsprachen, Dateimuster und die Engine für das Routing — steht in .lingo/config.json, nicht in den Pipeline-Variablen.
Vor dem Deploy prüfen#
Fügen Sie einen lingo check-Schritt hinzu, damit die Pipeline fehlschlägt, wenn für einen Quellstring eine Übersetzung fehlt:
- step:
name: Check translations
script:
- npm install -g @lingo.dev/cli
- lingo check