Stellen Sie Ihre Frage und erhalten Sie einen Resümee des Dokuments, indem Sie diese Seite und den AI-Anbieter Ihrer Wahl referenzieren
Versionshistorie
- "CI-Befehl hinzufügen"v7.5.116.1.2026
Der Inhalt dieser Seite wurde mit einer KI übersetzt.
Den englischen Originaltext ansehenIf you have an idea for improving this documentation, please feel free to contribute by submitting a pull request on GitHub.
GitHub link to the documentationCopy doc Markdown to clipboard
CI-Befehl
Kopieren Sie den Code in die Zwischenablage
npx intlayer ci <command...>Der CI-Befehl ist für Automatisierung und CI/CD-Pipelines konzipiert. Er injiziert automatisch Anmeldedaten aus der Umgebungsvariable INTLAYER_PROJECT_CREDENTIALS und kann Intlayer-Befehle über mehrere Projekte in einem Monorepo ausführen.
Funktionsweise
Der CI-Befehl arbeitet in zwei Modi:
Einzelprojektmodus: Wenn das aktuelle Arbeitsverzeichnis mit einem der Projektpfade in
INTLAYER_PROJECT_CREDENTIALSübereinstimmt, führt er den Befehl nur für dieses spezifische Projekt aus.Iterationsmodus: Wenn kein spezifischer Projektkontext erkannt wird, iteriert er über alle konfigurierten Projekte und führt den Befehl für jedes aus.
Umgebungsvariable
Der Befehl erfordert, dass die Umgebungsvariable INTLAYER_PROJECT_CREDENTIALS gesetzt ist. Diese Variable sollte ein JSON-Objekt enthalten, das Projektpfade ihren Anmeldedaten zuordnet:
Kopieren Sie den Code in die Zwischenablage
{ "packages/app": { "clientId": "your-client-id-1", "clientSecret": "your-client-secret-1" }, "packages/admin": { "clientId": "your-client-id-2", "clientSecret": "your-client-secret-2" }}Paketmanager-Erkennung
Der CI-Befehl erkennt automatisch, welcher Paketmanager verwendet wird (npm, yarn, pnpm oder bun), basierend auf der Umgebungsvariable npm_config_user_agent, und verwendet den entsprechenden Befehl zur Ausführung von Intlayer.
Argumente
<command...>: Der auszuführende Intlayer-Befehl (z. B.fill,push,build). Sie können jeden Intlayer-Befehl und seine Argumente übergeben.Beispiel:
npx intlayer ci fill --verboseBeispiel:
npx intlayer ci pushBeispiel:
npx intlayer ci build
Beispiele
Befehl im Einzelprojektmodus ausführen
Wenn Sie sich in einem Projektverzeichnis befinden, das mit einem der Pfade in INTLAYER_PROJECT_CREDENTIALS übereinstimmt:
Kopieren Sie den Code in die Zwischenablage
cd packages/appnpx intlayer ci fillDies führt den Befehl fill mit automatisch injizierten Anmeldedaten für das Projekt packages/app aus.
Befehl für alle Projekte ausführen
Wenn Sie sich in einem Verzeichnis befinden, das mit keinem Projektpfad übereinstimmt, iteriert der Befehl über alle konfigurierten Projekte:
Kopieren Sie den Code in die Zwischenablage
cd /path/to/monoreponpx intlayer ci pushDies führt den Befehl push für jedes in INTLAYER_PROJECT_CREDENTIALS konfigurierte Projekt aus.
Zusätzliche Flags übergeben
Sie können beliebige Flags an den zugrunde liegenden Intlayer-Befehl übergeben:
Kopieren Sie den Code in die Zwischenablage
npx intlayer ci fill --verbose --mode completeVerwendung in CI/CD-Pipelines
In Ihrer CI/CD-Konfiguration (z. B. GitHub Actions, GitLab CI) setzen Sie INTLAYER_PROJECT_CREDENTIALS als Geheimnis:
Kopieren Sie den Code in die Zwischenablage
# GitHub Actions Beispielenv: INTLAYER_PROJECT_CREDENTIALS: ${{ secrets.INTLAYER_PROJECT_CREDENTIALS }}steps: - name: Wörterbücher füllen run: npx intlayer ci fillGerüstete GitHub Actions
Wenn Sie intlayer init ausführen, erkennt Intlayer Ihren Paketmanager (npm, yarn, pnpm oder bun) und erstellt zwei GitHub Actions-Workflows unter .github/workflows/ mit Befehlen, die diesem Paketmanager entsprechen:
intlayer-fill.yml— Bei jedem Pull Request werden die Wörterbücher erstellt undintlayer fill --git-diff --mode completeausgeführt, um fehlende Übersetzungen für die geänderten Wörterbücher zu generieren, und dann wird das Ergebnis auf den PR-Branch committed.intlayer-test.yml— Bei jedem Pull Request werden die Wörterbücher erstellt undintlayer testausgeführt, wobei die Prüfung fehlschlägt, wenn erforderliche Lokalisierungen fehlende Übersetzungen haben.
Vorhandene Workflow-Dateien werden niemals überschrieben. Um das Scaffolding vollständig zu überspringen, führen Sie aus:
Kopieren Sie den Code in die Zwischenablage
npx intlayer init --no-github-actionsAI-Zugriff für den Fill-Workflow bereitstellen
Die gerüstete intlayer-fill.yml erfordert AI-Zugriff. Es stehen zwei Optionen zur Verfügung (konfiguriert im env-Block des Workflows):
- Ihr eigener AI-Provider-Schlüssel — Fügen Sie ein
AI_API_KEY-Secret in Ihren Repository-Einstellungen hinzu (Settings → Secrets and variables → Actions). Der Workflow leitet ihn über--provider,--modelund--api-keyweiter. - Intlayer CMS-Zugangsschlüssel — Fügen Sie
INTLAYER_CLIENT_IDundINTLAYER_CLIENT_SECRET-Secrets hinzu und verbinden Sie sie mit Ihremintlayer.configeditor-Abschnitt. CMS-Zugangsschlüssel gewähren AI-Zugriff über das Intlayer-Backend.
Der intlayer-test.yml-Workflow erfordert keinen AI-Zugriff.
Fehlerbehandlung
- Wenn
INTLAYER_PROJECT_CREDENTIALSnicht gesetzt ist, beendet sich der Befehl mit einem Fehler. - Wenn
INTLAYER_PROJECT_CREDENTIALSkein gültiges JSON ist, beendet sich der Befehl mit einem Fehler. - Wenn ein Projektpfad nicht existiert, wird er mit einer Warnung übersprungen.
- Wenn ein Projekt fehlschlägt, beendet sich der Befehl mit einem Statuscode ungleich null.
Anwendungsfälle
- Monorepo-Automatisierung: Intlayer-Befehle über mehrere Projekte in einem Monorepo ausführen
- CI/CD-Pipelines: Automatisierung der Wörterbuchverwaltung in Continuous-Integration-Workflows
- Massenoperationen: Dieselbe Operation gleichzeitig für mehrere Intlayer-Projekte durchführen
- Geheimnisverwaltung: Sichere Verwaltung von Anmeldedaten für mehrere Projekte mithilfe von Umgebungsvariablen
Sicherheitsbest Practices
- Speichern Sie
INTLAYER_PROJECT_CREDENTIALSals verschlüsselte Geheimnisse in Ihrer CI/CD-Plattform - Committen Sie niemals Anmeldedaten in die Versionskontrolle
- Verwenden Sie umgebungsspezifische Anmeldedaten für verschiedene Bereitstellungsumgebungen
- Rotieren Sie Anmeldedaten regelmäßig