GitHub、GitLab、Bitbucket で継続的ローカライゼーションを設定できます。方法は 2 つ。管理型の Lingo.dev GitHub App を使うか、自分のパイプラインで @lingo.dev/cli を実行するかです。利用中のプラットフォームや、どこまで細かく制御したいかに合わせて選んでください。
どちらを選ぶべきですか?#
| 方法 | おすすめのケース | 必要なもの |
|---|---|---|
| GitHub App | GitHub でホストしているリポジトリ | アプリをインストールし、.lingo/config.json を engineId と一緒にコミットします。runner、secret、CLI は不要です。 |
runner 上で @lingo.dev/cli を実行 | GitLab、Bitbucket、またはフルコントロールしたい場合の GitHub Actions | Node 22+、@lingo.dev/cli、LINGO_API_KEY secret、そして lingo push を実行するジョブが必要です。 |
GitHub をお使いなら、まずは GitHub App から
GitHub App はサーバー側で動作します。コミット済みの .lingo/config.json(engineId を含む)を読み取り、push や pull request に反応します。runner も API キーの secret も lock file も不要です。GitHub App ガイドに従えば設定は完了。このページの残りでは、自分のパイプラインで CLI を実行する方法を説明します。
パイプラインで CLI を実行する#
GitLab や Bitbucket を使っている場合、または GitHub でローカライゼーションを自分で回したい場合は、パイプラインのジョブとして @lingo.dev/cli を実行します。設定はどのプラットフォームでも 3 ステップで共通です。CLI を設定し、API キーを追加し、ワークフローを選びます。
前提条件
CI に追加する前に、CLI setup が動作しており、.lingo/config.json ファイルがあり、ローカルで lingo push を実行できる状態にしておく必要があります。
ステップ 1. CLI を設定する#
まだなら、CLI Quickstartに沿って進めてください。最終的に、次の状態になっているはずです。
- プロジェクトルートに
.lingo/config.jsonファイルがある(Configuration を参照) - Lingo.dev エンジン用の
LINGO_API_KEY lingo pushでローカルの翻訳生成を実行できる
CLI は Node 22+ で動作します。パイプラインには次のコマンドでインストールできます。
npm install -g @lingo.dev/cliステップ 2. API キーを CI シークレットとして追加する#
lingo push は LINGO_API_KEY 環境変数で認証します。CI プラットフォームの secret 管理に保存してください。
- Settings > Secrets and variables > Actions に移動します
- New repository secret をクリックします
- 名前:
LINGO_API_KEY、値: API キー - Add secret をクリックします
ステップ 3. ワークフローを選び、設定を追加する#
ジョブでは lingo push を実行して翻訳を生成し、その結果をコミットするか、各プラットフォームの標準ツールで pull request を作成します。チームに合ったワークフローを選んでください。
| ワークフロー | おすすめの用途 |
|---|---|
| main への commit | 手間なく、気づかないうちに翻訳更新を進めたい小規模チーム |
| main からの PR | 翻訳を main に反映する前にレビューしたいチーム |
| feature branch への commit | 長期間維持する feature branch があるチーム |
| feature branch からの PR | 翻訳の変更を 1 つひとつ細かく管理したいチーム |
どれを選べばよいか迷ったら、まずは "main への commit" から始めるのがおすすめです。いちばんシンプルで、あとからでも .lingo/config.json を変えずに切り替えられます。
プラットフォーム別のセットアップ手順やワークフロー例は、以下をご覧ください。
セットアップを確認する#
CI ジョブを設定したら、変更を push して動作を確認しましょう。パイプラインでは次の処理が実行されるはずです。
- 新規および変更されたコンテンツを翻訳するために
lingo pushを実行する - 翻訳を commit する、または PR を作成する(ワークフローによって異なります)
- すでに翻訳済みの内容を追跡する
.lingo/lock.jsonファイルを更新する
新しい翻訳を生成せず、CI 上で翻訳が完了していることだけを確認するには、lingo check を実行します。
lingo check未翻訳のコンテンツが 1 つでもあると、非ゼロのステータスで終了します。デプロイ前のチェックとして便利です。例については 高度なパターン を参照してください。
