|
Documentação
Agende uma demoPlataforma
PlataformaMCPCLIAPIWorkflows
GuiasChangelog

Localização contínua

  • Como funciona
  • Configuração

Plataformas

  • GitHub App
  • GitHub Actions
  • GitLab CI/CD
  • Bitbucket Pipelines
  • Padrões avançados

GitHub Actions

A GitHub Action oficial da Lingo.dev executa o pipeline de localização a cada push, fazendo commit das traduções diretamente ou abrindo um pull request, dependendo do seu workflow.

Prefere uma configuração gerenciada?

O GitHub App é a forma mais fácil de rodar localização contínua no GitHub — basta instalar uma vez para que ele reaja a pushes e pull requests, sem runner, sem secret de chave de API e sem lockfile. Use a GitHub Action (abaixo) quando quiser que a tradução rode dentro do seu próprio pipeline, junto com outras etapas de CI.

Pré-requisitos

Conclua primeiro a configuração de CI/CD. Você precisará de um i18n.json funcional e de um LINGODOTDEV_API_KEY armazenado como secret do repositório.

Configuração mínima#

Crie .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 }}

Isso faz commit das traduções diretamente em main a cada push.

Exemplos de workflow#

Commit na 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 a partir da 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 }}

Ative Settings > Actions > General > Allow GitHub Actions to create and approve pull requests para workflows baseados em PR.

Commit na branch de 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 a partir da branch de 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 disponíveis#

InputPadrãoDescrição
api-keyObrigatórioChave de API da Lingo.dev
pull-requestfalseCria um pull request em vez de fazer commit diretamente
commit-messagefeat: update translations via @LingoDotDevMensagem de commit personalizada
pull-request-titlefeat: update translations via @LingoDotDevTítulo de PR personalizado
commit-author-nameLingo.devNome do autor do commit no Git
commit-author-emailsupport@lingo.devEmail do autor do commit no Git
working-directory.Diretório de trabalho para monorepos
process-own-commitsfalseProcessa commits feitos por esta action
parallelfalseExecuta em modo paralelo
versionlatestVersão da CLI da Lingo.dev

Próximos passos#

GitHub App
Alternativa gerenciada — sem runner, secret ou lockfile
Padrões avançados
Verificações de tradução, conflitos de merge e seleção de workflow
GitLab CI/CD
Configure a integração com o GitLab CI/CD
Bitbucket Pipelines
Configure a integração com o Bitbucket Pipelines

Esta página foi útil?

Max PrilutskiyMax Prilutskiy·Atualizado há 24 dias·2 min de leitura