CLI에는 전용 ci 명령이 없습니다. CI에서 로컬라이제이션을 실행하는 방법은 두 가지입니다. Lingo.dev GitHub App에 서버 측 처리를 맡기거나(GitHub에서 권장), 자체 파이프라인에서 **lingo push**를 실행한 뒤 결과를 커밋하면 됩니다.
옵션 1: GitHub App(권장)#
리포지토리에 Lingo.dev GitHub App을 설치하세요. 커밋된 .lingo/config.json(engineId 포함)을 가리키도록 설정해 두면, 푸시와 pull request에 자동으로 반응해 변경된 소스 문자열을 감지하고, 사용 중인 엔진으로 번역한 뒤 결과를 브랜치에 다시 커밋하거나 pull request를 생성합니다. runner도, API 키 시크릿도, 관리할 lockfile도 필요 없습니다.
옵션 2: 자체 runner에서 lingo push 실행#
Node.js 22+를 지원하는 모든 CI 환경에서 CLI를 직접 실행할 수 있습니다. API 키(시크릿으로 저장)로 인증한 뒤, push를 실행하고 결과물을 커밋하세요.
name: Translate
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
- run: npm install -g @lingo.dev/cli
- run: lingo push
env:
LINGO_API_KEY: ${{ secrets.LINGO_API_KEY }}
- name: Commit translations
run: |
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 pushlingo push는 마지막 실행 이후 변경된 항목만 번역하고(.lingo/lock.json에서 추적), 실행이 끝날 때까지 기다린 뒤 결과물을 기록합니다. 브랜치에 직접 커밋하는 대신 pull request를 열려면 변경 사항을 전용 브랜치에 푸시한 다음, 플랫폼 도구(예: gh pr create)로 PR을 생성하세요.
배포 전 검증#
빌드 전에 lingo check 단계를 추가해 원본 문자열 중 번역이 누락된 항목이 하나라도 있으면 파이프라인이 실패하도록 하세요:
lingo check함께 보기#
- GitHub App - runner나 시크릿 없이 사용하는 관리형 지속적 로컬라이제이션.
- lingo push - 범위 지정 패턴,
--backfill-missing, 재시도 동작. - Configuration -
.lingo/config.json및 lockfile.
