You can use the Vercel CLI with any CI/CD provider such as Azure DevOps to generate Preview Deployments for every git
push and deploy to Production when code is merged into the main
branch.
This approach is useful for developers seeking full control over their CI/CD pipeline, those unable to use Vercel's Git integration or those with a trunk-based development workflow.
You can build your application locally (or in a pipeline) without giving Vercel access to the source code through vercel build
. Vercel automatically detects your frontend framework and generates a .vercel/output
folder conforming to the Build Output API specification.
vercel build
allows you to build your project within your own CI setup and upload only those build artifacts (and not the source code) to Vercel to create a deployment.
There are 3 options for deploying your application:
1. git push
: Uploads all local branch commits to the corresponding remote branch
2. vercel deploy
: Build a project locally or in your own CI environment
3. vercel deploy --prebuilt
: Deploy a build output directly to Vercel, bypassing the Vercel build system
- Retrieve your Vercel Access Token
- Install the Vercel CLI and run
vercel login
- Inside your folder, run
vercel link
to create a new Vercel project - Inside the generated
.vercel
folder, save theprojectId
andorgId
from theproject.json
- Add
VERCEL_TOKEN
,VERCEL_ORG_ID
, andVERCEL_PROJECT_ID
as environment variables in your CI/CD provider - Then set your custom workflow. For example, to build your application locally you could use:
npm install --global vercelvercel pull --yes --environment=preview --token=YOUR_VERCEL_TOKENvercel build --token=YOUR_VERCEL_TOKENvercel deploy --prebuilt --token=YOUR_VERCEL_TOKEN
You can also take full control over your application, deciding when to assign domains. This allows you to run tests or wait for other elements to be ready before assigning production domains to your new deployment.
The following examples show how to use the Vercel CLI as shown above: