將 Turborepo 與 CircleCI 搭配使用
以下範例說明如何將 Turborepo 與 CircleCI(在新分頁中開啟) 搭配使用。
對於給定的根 package.json
{
"name": "my-turborepo",
"scripts": {
"build": "turbo run build",
"test": "turbo run test"
},
"devDependencies": {
"turbo": "1.2.5"
}
}
和 turbo.json
{
"$schema": "https://turbo.dev.org.tw/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
- 存取遠端快取的 Bearer 令牌TURBO_TEAM
- 儲存庫所屬的帳戶
要使用 Vercel 遠端快取,你可以透過幾個步驟取得這些變數的值
- 在 Vercel 控制台(在新分頁開啟) 中為你的帳戶建立範圍存取令牌。
將值複製到安全的地方。你稍後會需要它。
- 前往你的 CircleCI 專案設定並按一下環境變數分頁。建立一個名為
TURBO_TOKEN
的新機密,並輸入範圍存取令牌的值。
-
建立第二個名為
TURBO_TEAM
的機密,並輸入團隊 Vercel URL 的值,不含vercel.com/
。團隊 URL 可在控制台中團隊的「一般專案設定」中找到。如果你使用的是 Hobby 方案,你可以使用你的使用者名稱。使用者名稱可以在 Vercel 個人帳戶設定(在新分頁開啟) 中找到。
- CircleCI 會自動將儲存在專案設定中的環境變數載入 CI 環境。CI 檔案不需要任何修改。