Turborepo logo

GitLab CI

以下示例展示了如何将 Turborepo 与 GitLab CI 结合使用。

对于给定的根目录 package.json

./package.json
{
  "name": "my-turborepo",
  "scripts": {
    "build": "turbo run build",
    "test": "turbo run test"
  },
  "devDependencies": {
    "turbo": "latest"
  }
}

以及 turbo.json

./turbo.json
{
  "$schema": "https://turbo.rust-lang.net.cn/schema.json",
  "tasks": {
    "build": {
      "outputs": [".svelte-kit/**"],
      "dependsOn": ["^build"]
    },
    "test": {
      "dependsOn": ["^build"]
    }
  }
}

在你的仓库中创建一个名为 .gitlab-ci.yml 的文件,内容如下

.gitlab-ci.yml
image: node:latest
stages:
  - build
build:
  stage: build
  script:
    - npm install
    - npm run build
    - npm run test

远程缓存

要使用远程缓存,请检索你的提供商的远程缓存的团队和令牌。在本示例中,我们将使用 Vercel Remote Cache

  • TURBO_TOKEN - 用于访问远程缓存的 Bearer 令牌
  • TURBO_TEAM - monorepo 所属的账户

要使用 Vercel Remote Caching,你可以通过以下几个步骤获取这些变量的值

  1. Vercel Dashboard 中为你的账户创建一个作用域访问令牌

Vercel Access Tokens

将该值复制到一个安全的地方。稍后你需要用到它。

  1. 前往你的 GitLab 仓库设置,点击 Settings(设置)选项卡,然后点击 CI/CD 选项卡。创建一个名为 TURBO_TOKEN 的新变量,并输入你的作用域访问令牌的值。

GitLab CI Variables GitLab CI Create Variable

  1. 创建第二个密钥,名为 TURBO_TEAM,并输入你的团队 Vercel URL 的值,不包括 vercel.com/。你的团队 URL 可以在仪表板中你的团队常规项目设置中找到。

    如果你使用的是 Hobby 计划,你可以使用你的用户名。你的用户名可以在你的 Vercel Personal Account Settings 中找到

Vercel Account Slug

小时

总计算量节省
开始使用
远程缓存 →

本页内容