Перевести

GitHub Action

При каждом push переводит новые ключи и открывает pull request. Вы проверяете и сливаете его, как любое другое изменение.

.github/workflows/translate.yml
on:
  push:
    branches: [main]
    paths: ["locales/en.json"]

permissions:
  contents: write
  pull-requests: write

jobs:
  translate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: kaeris-io/kaeris-action@v1
        id: kaeris
        with:
          source: locales/en.json
          languages: de,ja,fr
          # api-key: ${{ secrets.KAERIS_API_KEY }}
      - if: steps.kaeris.outputs.changed == 'true'
        uses: peter-evans/create-pull-request@v6
        with:
          branch: kaeris/i18n-updates
          title: "i18n: new translations"
После push, добавляющего ключ

i18n: new translations

kaeris/i18n-updates → main

M locales/de.json M locales/ja.json M locales/fr.json M kaeris.lock

Отправляются только новые и измененные ключи: only-new включен по умолчанию, а kaeris.lock запоминает остальные. Без api-key применяются ограничения бесплатной демо-версии.

Входные параметры

ПараметрЗначение
modetranslate (по умолчанию) или check: без вызова API, роняет задачу, если перевод сломан.
source, languagesИсходный файл и целевые языки через запятую. Обязательно.
outПапка языковых файлов. По умолчанию — рядом с исходником.
only-newtrue по умолчанию: переводить только измененное.
api-key, openrouter-keyВаш ключ KAERIS; ключ OpenRouter только для Lifetime.
tone, icuТо же, что и флаги CLI.
strict, sarif-fileРежим проверки: падать также на предупреждениях и лишних ключах; записать отчёт SARIF.

Выходные значения: changed, summary, missing, placeholder-issues, check-exit-code, translate-exit-code. Исходный код и полные workflow: github.com/kaeris-io/kaeris-action.

CI recipes (in English): GitHub Actions · GitLab CI · pre-commit · Make and npm scripts

Эту страницу перевёл KAERIS и проверил каждую строку обратным переводом. Носитель языка ещё не проверял. Оригинал на английском