Lingo.dev nabízí dva způsoby, jak na GitHubu spustit Průběžnou lokalizaci: přes spravovanou GitHub App nebo spuštěním @lingo.dev/cli v jobu GitHub Actions.
Kterou možnost zvolit?
Začněte s GitHub App — běží na serveru, automaticky reaguje na push a pull requesty a nevyžaduje runner, secret s API klíčem ani správu lockfile. Po GitHub Actions sáhněte ve chvíli, kdy chcete lokalizaci spouštět ve vlastní pipeline spolu s dalšími CI kroky.
GitHub App (doporučeno)#
GitHub App je nejjednodušší způsob, jak na GitHubu spustit Průběžnou lokalizaci. Stačí ji jednou nainstalovat, nasměrovat na engine a pak bude reagovat na každý push i pull request.
- Nainstalujte aplikaci ze stránky GitHub App a udělte jí přístup k repozitáři.
- Commitněte do kořene repozitáře soubor
.lingo/config.json, který popisuje vaše buckety a jazyky, včetněengineIdengine, který má aplikace používat. Formát souboru najdete v části Configuration. - Proveďte push. Aplikace lokalizuje změněný obsah na serveru a výsledky commitne zpět (nebo otevře pull request), takže
.lingo/lock.jsonzůstává automaticky aktuální.
Protože aplikace běží na serveru, nemusíte spravovat runner, ukládat secret LINGO_API_KEY ani spouštět příkaz pro lockfile.
GitHub Actions#
Pokud chcete lokalizaci spouštět ve vlastní pipeline, nainstalujte CLI v jobu a spusťte lingo push, pak výsledky commitněte nebo otevřete pull request pomocí svých stávajících nástrojů.
Uložte API klíč jako secret repozitáře s názvem LINGO_API_KEY (Settings > Secrets and variables > Actions). CLI si ho načte z prostředí.
Commit do aktuální větve#
Vytvořte .github/workflows/localize.yml:
name: Localize
on:
push:
branches: [main]
permissions:
contents: write
jobs:
localize:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22
- name: Install Lingo.dev CLI
run: npm install -g @lingo.dev/cli
- name: Localize
run: lingo push
env:
LINGO_API_KEY: ${{ secrets.LINGO_API_KEY }}
- name: Commit translations
run: |
git config user.name "Lingo.dev"
git config user.email "support@lingo.dev"
git add .
git diff --staged --quiet || git commit -m "feat: update translations"
git pushTím se při každém pushi lokalizuje změněný obsah a výsledky se commitnou přímo do větve.
Otevřít pull request#
Pokud chcete překlady doručovat přes kontrolu místo přímého commitování, pushněte výsledky do větve a otevřete pull request. Tento příklad používá GitHub CLI, které je na GitHub-hosted runnerech předinstalované:
name: Localize
on:
push:
branches: [main]
permissions:
contents: write
pull-requests: write
jobs:
localize:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22
- name: Install Lingo.dev CLI
run: npm install -g @lingo.dev/cli
- name: Localize
run: lingo push
env:
LINGO_API_KEY: ${{ secrets.LINGO_API_KEY }}
- name: Open pull request
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
git config user.name "Lingo.dev"
git config user.email "support@lingo.dev"
branch="lingo/translations-${{ github.run_id }}"
git checkout -b "$branch"
git add .
git diff --staged --quiet && exit 0
git commit -m "feat: update translations"
git push origin "$branch"
gh pr create --fill --base "${{ github.ref_name }}" --head "$branch"Pro workflow založené na PR povolte Settings > Actions > General > Allow GitHub Actions to create and approve pull requests.
Stejný job funguje i na feature větvích — změňte filtr on.push.branches (například branches-ignore: [main]) a určete, kde se má lokalizace spouštět.
