|
Documentação
Marcar uma demonstraçãoPlataforma
PlataformaMCPCLIAPIWorkflows
GuiasChangelog

Localização contínua

  • Como funciona
  • Configuração

Plataformas

  • App GitHub
  • 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, consoante o seu workflow.

Prefere uma configuração gerida?

A GitHub App é a forma mais simples de executar localização contínua no GitHub — instale-a uma vez e reage a pushes e pull requests sem runner, sem segredo de chave API e sem lockfile. Use a GitHub Action (abaixo) quando quiser que a tradução corra dentro do seu próprio pipeline, a par de outros passos de CI.

Pré-requisitos

Conclua primeiro a Configuração de CI/CD. Precisa de um i18n.json funcional e de LINGODOTDEV_API_KEY guardados como segredo 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 }}

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

Exemplos de workflow#

Commit para 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 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 para feature branch#

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 de feature branch#

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#

InputPredefinidoDescrição
api-keyObrigatórioChave API da Lingo.dev
pull-requestfalseCriar 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 Git
commit-author-emailsupport@lingo.devEmail do autor do commit Git
working-directory.Diretório de trabalho para monorepos
process-own-commitsfalseProcessar commits feitos por esta action
parallelfalseExecutar em modo paralelo
versionlatestVersão da CLI da Lingo.dev

Próximos passos#

GitHub App
Alternativa gerida — sem runner, segredo ou lockfile
Padrões avançados
Verificações de tradução, conflitos de merge, 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