|
Documentación
Agenda una demoPlataforma
PlataformaMCPCLIAPIFlujos de trabajo
GuíasRegistro de cambios

Localización continua

  • Cómo funciona
  • Configuración

Plataformas

  • App de GitHub
  • GitHub Actions
  • GitLab CI/CD
  • Bitbucket Pipelines
  • Patrones avanzados

GitHub Actions

La GitHub Action oficial de Lingo.dev ejecuta el pipeline de localización en cada push, haciendo commit de las traducciones directamente o abriendo un pull request, según tu flujo de trabajo.

¿Prefieres una opción administrada?

La GitHub App es la forma más fácil de implementar localización continua en GitHub: la instalas una sola vez y responde a pushes y pull requests sin runner, sin secret de clave API y sin lockfile. Usa la GitHub Action (abajo) cuando quieras que la traducción se ejecute dentro de tu propio pipeline junto con otros pasos de CI.

Requisitos previos

Primero completa la configuración de CI/CD. Necesitas un i18n.json y un LINGODOTDEV_API_KEY funcionales, guardados como un secret del repositorio.

Configuración mínima#

Crea .github/workflows/translate.yml:

yaml
name: Translate
on:
  push:
    branches: [main]
permissions:
  contents: write
jobs:
  translate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Lingo.dev
        uses: lingodotdev/lingo.dev@main
        with:
          api-key: ${{ secrets.LINGODOTDEV_API_KEY }}

Esto hace commit de las traducciones directamente en main con cada push.

Ejemplos de flujos de trabajo#

Commit a main#

yaml
name: Translate
on:
  push:
    branches: [main]
permissions:
  contents: write
jobs:
  translate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Lingo.dev
        uses: lingodotdev/lingo.dev@main
        with:
          api-key: ${{ secrets.LINGODOTDEV_API_KEY }}

Pull request desde main#

yaml
name: Translate
on:
  push:
    branches: [main]
permissions:
  contents: write
  pull-requests: write
jobs:
  translate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Lingo.dev
        uses: lingodotdev/lingo.dev@main
        with:
          api-key: ${{ secrets.LINGODOTDEV_API_KEY }}
          pull-request: true
        env:
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Activa Settings > Actions > General > Allow GitHub Actions to create and approve pull requests para los flujos de trabajo basados en PR.

Commit a rama feature#

yaml
name: Translate
on:
  push:
    branches-ignore: [main]
permissions:
  contents: write
jobs:
  translate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Lingo.dev
        uses: lingodotdev/lingo.dev@main
        with:
          api-key: ${{ secrets.LINGODOTDEV_API_KEY }}

Pull request desde rama feature#

yaml
name: Translate
on:
  push:
    branches-ignore: [main]
permissions:
  contents: write
  pull-requests: write
jobs:
  translate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Lingo.dev
        uses: lingodotdev/lingo.dev@main
        with:
          api-key: ${{ secrets.LINGODOTDEV_API_KEY }}
          pull-request: true
        env:
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Inputs disponibles#

InputPredeterminadoDescripción
api-keyObligatorioClave API de Lingo.dev
pull-requestfalseCrear un pull request en lugar de hacer commit directamente
commit-messagefeat: update translations via @LingoDotDevMensaje de commit personalizado
pull-request-titlefeat: update translations via @LingoDotDevTítulo de PR personalizado
commit-author-nameLingo.devNombre del autor del commit de Git
commit-author-emailsupport@lingo.devCorreo electrónico del autor del commit de Git
working-directory.Directorio de trabajo para monorepos
process-own-commitsfalseProcesar los commits realizados por esta acción
parallelfalseEjecutar en modo paralelo
versionlatestVersión de la CLI de Lingo.dev

Siguientes pasos#

GitHub App
Alternativa administrada: sin runner, secret ni lockfile
Patrones avanzados
Validaciones de traducción, conflictos de merge y selección de flujo de trabajo
GitLab CI/CD
Configura la integración con GitLab CI/CD
Bitbucket Pipelines
Configura la integración con Bitbucket Pipelines

¿Te resultó útil esta página?

Max PrilutskiyMax Prilutskiy·Actualizado hace 24 días·2 min de lectura