Travis CI
How to use Travis CI with Turborepo to optimize your CI workflow
The following example shows how to use Turborepo with Travis CI.
For a given root package.json:
{
"name": "my-turborepo",
"scripts": {
"build": "turbo run build",
"test": "turbo run test"
},
"devDependencies": {
"turbo": "latest"
}
}And a turbo.json:
{
"$schema": "https://turborepo.dev/schema.json",
"tasks": {
"build": {
"outputs": [".svelte-kit/**"],
"dependsOn": ["^build"]
},
"test": {
"dependsOn": ["^build"]
}
}
}Create a file called .travis.yml in your repository with the following contents:
language: node_js
node_js:
- lts/*
cache:
npm: false
directories:
- "~/.pnpm-store"
before_install:
- curl -f https://get.pnpm.io/v6.16.js | node - add --global pnpm@6.32.2
- pnpm config set store-dir ~/.pnpm-store
install:
- pnpm install
script:
- pnpm build
script:
- pnpm testFor more information visit the pnpm documentation section on Travis CI integration, view it here
Travis CI detects the use of Yarn by the presence of yarn.lock. It will automatically ensure it is installed.
language: node_js
node_js:
- lts/*
install:
- yarn
script:
- yarn build
script:
- yarn testlanguage: node_js
node_js:
- lts/*
install:
- npm install
script:
- npm run build
script:
- npm run testlanguage: node_js
node_js:
- lts/*
cache:
npm: false
directories:
- "~/.pnpm-store"
before_install:
- curl -fsSL https://bun.sh/install | bash
install:
- bun install
script:
- bun run build
script:
- bun run testRemote Caching
To use Remote Caching, retrieve the team and token for the Remote Cache for your provider. In this example, we'll use Vercel Remote Cache:
TURBO_TOKEN- The Bearer token to access the Remote CacheTURBO_TEAM- The slug of the Vercel team to share the artifacts with
To use Vercel Remote Caching, you can get the value of these variables in a few steps:
- Create a Scoped Access Token to your account in the Vercel Dashboard

Copy the value to a safe place. You'll need it in a moment.
- Go to your Travis repository settings and scroll down to the Environment Variables section. Create a new variable called
TURBO_TOKENand enter the value of your Scoped Access Token.

-
Make a second secret called
TURBO_TEAMand set it to your team slug - the part aftervercel.com/in your Team URL. For example, the slug forvercel.com/acmeisacme. -
Travis CI automatically loads environment variables stored in project settings into the CI environment. No modifications are necessary for the CI file.