|
Documentation
Réserver une démoPlateforme
PlateformeMCPCLIAPIWorkflows
GuidesChangelog

Localisation continue

  • Comment ça marche
  • Configuration

Plateformes

  • App GitHub
  • GitHub
  • GitLab CI/CD
  • Bitbucket Pipelines
  • Bonnes pratiques avancées

GitHub

Lingo.dev propose deux façons d’exécuter la Localisation continue sur GitHub : la GitHub App gérée, ou l’exécution de @lingo.dev/cli dans un job GitHub Actions.

Lequel choisir ?

Commencez par la GitHub App : elle s’exécute côté serveur, réagit automatiquement aux pushes et aux pull requests, et ne nécessite ni runner, ni secret de clé API, ni gestion du lockfile. Préférez GitHub Actions si vous voulez exécuter la localisation dans votre propre pipeline, aux côtés d’autres étapes de CI.

GitHub App (recommandée)#

La GitHub App est la façon la plus simple d’exécuter la Localisation continue sur GitHub. Installez-la une fois, associez-la à un moteur, et elle réagit à chaque push et pull request.

  1. Installez l’application depuis la page GitHub App et accordez-lui l’accès à votre dépôt.
  2. Commitez un .lingo/config.json à la racine du dépôt pour décrire vos buckets et vos langues, y compris la engineId du moteur que l’application doit utiliser. Consultez Configuration pour le format du fichier.
  3. Poussez vos modifications. L’application localise le contenu modifié côté serveur et commit les résultats en retour (ou ouvre une pull request), en maintenant .lingo/lock.json automatiquement à jour.

Comme l’application s’exécute côté serveur, il n’y a aucun runner à maintenir, aucun secret LINGO_API_KEY à stocker, ni aucune commande de lockfile à exécuter.

GitHub Actions#

Pour exécuter la localisation dans votre propre pipeline, installez le CLI dans un job et lancez lingo push, puis commitez les résultats ou ouvrez une pull request avec vos outils habituels.

Stockez votre clé API comme secret de dépôt nommé LINGO_API_KEY (Settings > Secrets and variables > Actions). Le CLI la lit depuis l’environnement.

Commit sur la branche actuelle#

Créez .github/workflows/localize.yml :

yaml
name: Localize
on:
  push:
    branches: [main]
permissions:
  contents: write
jobs:
  localize:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 22
      - name: Install Lingo.dev CLI
        run: npm install -g @lingo.dev/cli
      - name: Localize
        run: lingo push
        env:
          LINGO_API_KEY: ${{ secrets.LINGO_API_KEY }}
      - name: Commit translations
        run: |
          git config user.name "Lingo.dev"
          git config user.email "support@lingo.dev"
          git add .
          git diff --staged --quiet || git commit -m "feat: update translations"
          git push

Cela localise le contenu modifié et commit les résultats directement sur la branche à chaque push.

Ouvrir une pull request#

Pour intégrer les traductions via une relecture plutôt qu’en les committant directement, poussez les résultats vers une branche, puis ouvrez une pull request. Cet exemple utilise la GitHub CLI, préinstallée sur les runners hébergés par GitHub :

yaml
name: Localize
on:
  push:
    branches: [main]
permissions:
  contents: write
  pull-requests: write
jobs:
  localize:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 22
      - name: Install Lingo.dev CLI
        run: npm install -g @lingo.dev/cli
      - name: Localize
        run: lingo push
        env:
          LINGO_API_KEY: ${{ secrets.LINGO_API_KEY }}
      - name: Open pull request
        env:
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        run: |
          git config user.name "Lingo.dev"
          git config user.email "support@lingo.dev"
          branch="lingo/translations-${{ github.run_id }}"
          git checkout -b "$branch"
          git add .
          git diff --staged --quiet && exit 0
          git commit -m "feat: update translations"
          git push origin "$branch"
          gh pr create --fill --base "${{ github.ref_name }}" --head "$branch"

Activez Settings > Actions > General > Allow GitHub Actions to create and approve pull requests pour les workflows basés sur des PR.

Le même job fonctionne sur les branches de fonctionnalité : modifiez le filtre on.push.branches (par exemple branches-ignore: [main]) pour définir où la localisation s’exécute.

Étapes suivantes#

Application GitHub
Alternative gérée : sans runner, secret ni lockfile
Référence CLI
Commandes, configuration et utilisation en CI
Modèles avancés
Vérifications de localisation, conflits de fusion, sélection du workflow
GitLab CI/CD
Configurez l’intégration GitLab CI/CD

Cette page vous a-t-elle été utile ?

Max PrilutskiyMax Prilutskiy·Mis à jour il y a 29 jours·3 min de lecture