@vercel/remote-nx
This project implements a task runner for @nrwl/nx that caches build artifacts in the Vercel Remote Cache.
Table of Contents
Setup
Let's assume you already have a Vercel Account. For the rest of the guide you will need a Vercel Access Token and your team ID. You can create a vercel access token in your account settings. Your team ID can be found under your team settings page.
Have those handy as we'll need them to authorize your monorepo to Vercel's remote cache.
Usage
npm install --save-dev @vercel/remote-nx
In your nx.json
file you will find a tasksRunnerOptions
field. Update this field so that it's using the installed @vercel/remote-nx
{
"tasksRunnerOptions": {
"default": {
"runner": "@vercel/remote-nx",
"options": {
"cacheableOperations": ["build", "test", "lint", "e2e"],
"token": "<token>",
"teamId": "<teamId>"
}
}
}
}
You can specify your token
and teamId
in your nx.json or set them as environment variables.
Parameter | Description | Environment Variable / .env | nx.json |
---|
Vercel Access Token | Vercel access token with access to the provided team | NX_VERCEL_REMOTE_CACHE_TOKEN | token |
Vercel Team ID (optional) | The Vercel Team ID that should share the Remote Cache | NX_VERCEL_REMOTE_CACHE_TEAM | teamId |
Run it 🚀
Clear your local cache and rebuild your project.
nx reset
nx build
Advanced Configuration
Option | Description |
---|
verbose | Set to receive full stack traces whenever errors occur. Best used for debugging. Default: false |
silent | Set to mute success and info logs. Default: false |
dotenv | Set to false to disable reading .env into process.env . Default: true |
dotenvPath | Set to read .env files from a different folder. |
"tasksRunnerOptions": {
"default": {
"runner": "@vercel/remote-nx",
"options": {
"verbose": true,
"silent": true
}
}
}
Credit to nx-remotecache-custom
examples.