リポジトリ
ドキュメント
CircleCI

CircleCI で Turborepo を使用する

次の例では、CircleCI (新しいタブで開きます)で Turborepo を使用する方法を示します。

与えられたルートの package.json

{
  "name": "my-turborepo",
  "scripts": {
    "build": "turbo run build",
    "test": "turbo run test"
  },
  "devDependencies": {
    "turbo": "1.2.5"
  }
}

および turbo.json

{
  "$schema": "https://turbo.dokyumento.jp/schema.json",
  "pipeline": {
    "build": {
      "outputs": [".next/**", "!.next/cache/**"],
      "dependsOn": ["^build"]
    },
    "test": {
      "dependsOn": ["^build"]
    },
  }
}

次の内容で、リポジトリに .circleci/config.yml というファイルを作成します。

version: 2.1
orbs:
  node: circleci/node@5.0.2
workflows:
  test:
    jobs:
      - test
jobs:
  test:
    docker:
      - image: cimg/node:lts
    steps:
      - checkout
      - node/install-packages
      - run:
        command: npm run build
      - run:
        command: npm run test

リモートキャッシュ

CircleCI でリモートキャッシングを使用するには、次の環境変数を CircleCI プロジェクトに追加して、turbo コマンドで使用できるようにします。

  • TURBO_TOKEN - リモートキャッシュにアクセスするためのベアラートークン
  • TURBO_TEAM - モノレポが属するアカウント

Vercel リモートキャッシュを使用するには、いくつかの手順でこれらの変数の値を取得できます。

  1. Vercel ダッシュボード (新しいタブで開きます)でアカウントへのスコープ付きアクセストークンを作成します。

Vercel Access Tokens

値を安全な場所にコピーします。後で必要になります。

  1. CircleCI プロジェクトの設定に移動し、[**環境変数**] タブをクリックします。TURBO_TOKEN という新しいシークレットを作成し、スコープ付きアクセストークンの値を入力します。

CircleCI Environment Variables CircleCI Create Environment Variables

  1. TURBO_TEAM という 2 番目のシークレットを作成し、チームの Vercel URL の値を vercel.com/ なしで入力します。チーム URL は、ダッシュボードからチームの一般プロジェクト設定内で見つけることができます。

    ホビープランを使用している場合は、ユーザー名を使用できます。ユーザー名は、Vercel の個人アカウント設定 (新しいタブで開きます)で確認できます。

Vercel Account Slug

  1. CircleCI は、プロジェクト設定に保存されている環境変数を CI 環境に自動的にロードします。CI ファイルの変更は必要ありません。