En Bitbucket, ejecuta @lingo.dev/cli dentro de un paso del pipeline: instálalo, ejecuta lingo push para traducir las cadenas de origen modificadas a través de tu motor y luego haz commit de los resultados o abre un pull request con las herramientas nativas de Bitbucket.
Requisitos previos
Necesitas tener .lingo/config.json confirmado en el repositorio (con un engineId, idiomas de origen y destino, y patrones files) y tu clave API de Lingo.dev guardada como variable del repositorio. Consulta la guía de inicio rápido del CLI para crear la configuración.
Autenticación#
El CLI se autentica con la variable de entorno LINGO_API_KEY. Agrega tu clave como una variable del repositorio segura para que esté disponible en los pasos del pipeline:
Configuración del repositorio > Variables del repositorio: agrega LINGO_API_KEY y márcala como segura.
Para enviar commits o abrir pull requests de vuelta al repositorio, el pipeline también necesita acceso de escritura a Git. Las opciones habituales son una clave SSH del repositorio (Configuración del repositorio > Claves SSH) o un token de acceso del repositorio con el alcance Read & write repositories (y pull requests, para el modo PR), guardado como variable segura del repositorio, por ejemplo BB_TOKEN.
Ejemplos de flujo de trabajo#
Commit directo (predeterminado)#
Instala el CLI, ejecuta lingo push y haz commit de los archivos traducidos de vuelta en la rama:
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 traduce solo lo que cambió desde la última ejecución (registrado en .lingo/lock.json), espera a que termine y escribe los resultados en disco.
Modo pull request#
Envía las traducciones a una rama dedicada en lugar de hacer commit en main y luego abre un pull request con las herramientas de Bitbucket:
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#
Ejecuta el CLI desde un subdirectorio cuando la configuración esté dentro de un espacio de trabajo. El CLI resuelve .lingo/config.json desde el directorio de trabajo:
image: node:22
pipelines:
branches:
main:
- step:
name: Translate
script:
- cd apps/web
- npm install -g @lingo.dev/cli
- lingo pushVariables del pipeline#
| Variable | Obligatorio | Descripción |
|---|---|---|
LINGO_API_KEY | Sí | Clave API de Lingo.dev. Guárdala como variable segura del repositorio. |
BB_TOKEN | Para acceso de escritura con push/PR | Token de acceso del repositorio (o clave SSH) que Git usa para hacer commit o abrir pull requests. |
Todo lo demás —idioma de origen, idiomas de destino, patrones de archivos y el motor por el que se enruta— va en .lingo/config.json, no en las variables del pipeline.
Verifica antes de desplegar#
Agrega un paso lingo check para hacer que el pipeline falle cuando falte la traducción de alguna cadena de origen:
- step:
name: Check translations
script:
- npm install -g @lingo.dev/cli
- lingo check