|
ドキュメント
デモを予約プラットフォーム
プラットフォームMCPCLIAPIワークフロー
ガイド変更履歴

継続的ローカライゼーション

  • 仕組み
  • セットアップ

プラットフォーム

  • GitHub App
  • GitHub Actions
  • GitLab CI/CD
  • Bitbucket Pipelines
  • 高度なパターン

GitHub Actions

公式のLingo.dev GitHub Actionは、プッシュのたびにローカライゼーションパイプラインを実行し、ワークフローに応じて翻訳を直接コミットするか、プルリクエストを作成します。

マネージド運用をお望みですか?

GitHub App は、GitHubで継続的ローカライゼーションを実現する最も手軽な方法です。一度インストールするだけで、runnerもAPIキーのsecretもlockfileも不要で、プッシュやプルリクエストに反応します。翻訳を他のCIステップとあわせて自分のパイプライン内で実行したい場合は、GitHub Action(以下)を使ってください。

前提条件

まず CI/CD Setup を完了してください。リポジトリのsecretに保存された有効な i18n.json と LINGODOTDEV_API_KEY が必要です。

最小構成#

.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 }}

これにより、プッシュのたびに翻訳が main に直接コミットされます。

ワークフロー例#

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 }}

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 }}

PRベースのワークフローでは、Settings > Actions > General > Allow GitHub Actions to create and approve pull requests を有効にしてください。

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 }}

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 }}

利用可能な入力#

入力デフォルト説明
api-key必須Lingo.dev APIキー
pull-requestfalse直接コミットする代わりにプルリクエストを作成
commit-messagefeat: update translations via @LingoDotDevカスタムコミットメッセージ
pull-request-titlefeat: update translations via @LingoDotDevカスタムPRタイトル
commit-author-nameLingo.devGitコミットの作成者名
commit-author-emailsupport@lingo.devGitコミットの作成者メールアドレス
working-directory.モノレポ向けの作業ディレクトリ
process-own-commitsfalseこのアクションが作成したコミットも処理
parallelfalse並列モードで実行
versionlatestLingo.dev CLIのバージョン

次のステップ#

GitHub App
マネージド運用の代替手段。runner、secret、lockfileは不要
高度なパターン
翻訳チェック、マージコンフリクト、ワークフローの選択
GitLab CI/CD
GitLab CI/CD連携を設定
Bitbucket Pipelines
Bitbucket Pipelines連携を設定

このページは役に立ちましたか?

Max PrilutskiyMax Prilutskiy·更新済み 29日前·2分で読めます