vercel-deploy-integration

支持将 Vercel 集成应用一键部署至 Vercel、Fly.io 和 Cloud Run 三大平台,自动完成密钥配置、环境变量注入与部署流水线搭建,覆盖从开发到生产全周期的发布需求。

快捷安装

在终端运行此命令,即可一键安装该 Skill 到您的 Claude 中

npx skills add jeremylongshore/claude-code-plugins-plus-skills --skill "vercel-deploy-integration"

Vercel Deploy Integration

Overview

Deploy Vercel applications to production using CLI, API, and Git-triggered workflows. Covers deployment promotion, instant rollback, rolling releases, multi-region function configuration, and deploy hooks for headless CMS integration.

Prerequisites

  • Vercel project linked and configured
  • Production environment variables set
  • Custom domain configured (optional)
  • VERCEL_TOKEN for API-based deployments

Instructions

Step 1: Production Deploy Methods

# Method 1: CLI direct production deploy
vercel --prod

# Method 2: Promote a preview deployment to production
vercel promote https://my-app-preview-xxx.vercel.app

# Method 3: API-based deployment
curl -X POST "https://api.vercel.com/v13/deployments" \
  -H "Authorization: Bearer $VERCEL_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "my-app",
    "target": "production",
    "gitSource": {
      "type": "github",
      "repoId": "123456789",
      "ref": "main",
      "sha": "'$(git rev-parse HEAD)'"
    }
  }'

# Method 4: Deploy Hook (for CMS-triggered rebuilds)
curl -X POST "https://api.vercel.com/v1/integrations/deploy/prj_xxx/hook_xxx"

Step 2: Instant Rollback

# Roll back to the previous production deployment (no rebuild)
vercel rollback

# Roll back to a specific deployment
vercel rollback dpl_xxxxxxxxxxxx

# Verify the rollback
vercel ls --prod
curl -s https://yourdomain.com/api/health | jq .

# Via API — promote a known-good deployment
curl -X POST "https://api.vercel.com/v9/projects/my-app/promote" \
  -H "Authorization: Bearer $VERCEL_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"deploymentId": "dpl_known_good_id"}'

Key points:

  • Instant rollback swaps production traffic without rebuilding
  • The rolled-back deployment retains its original environment variables
  • All production domains immediately point to the rolled-back deployment

Step 3: Rolling Releases (Gradual Rollout)

Configure rolling releases in the dashboard under Settings > Rolling Releases:

// vercel.json — rolling release config
{
  "rollingRelease": {
    "enabled": true,
    "stages": [
      { "targetPercentage": 10, "duration": 300 },
      { "targetPercentage": 50, "duration": 600 },
      { "targetPercentage": 100 }
    ]
  }
}

This routes 10% of traffic to the new deployment for 5 minutes, then 50% for 10 minutes, then 100%. If errors spike during any stage, rollback instantly.

Step 4: Multi-Region Function Configuration

// vercel.json — deploy functions to specific regions
{
  "regions": ["iad1", "sfo1", "cdg1", "hnd1"],
  "functions": {
    "api/user.ts": {
      "memory": 1024,
      "maxDuration": 30
    },
    "api/heavy-compute.ts": {
      "memory": 3008,
      "maxDuration": 60,
      "regions": ["iad1"]
    }
  }
}

Available regions:

RegionLocationCode
Washington, D.C.US Eastiad1
San FranciscoUS Westsfo1
ParisEuropecdg1
TokyoAsiahnd1
SydneyAustraliasyd1
S. PauloSouth Americagru1
LondonEuropelhr1

Step 5: Deploy Hooks (CMS Triggers)

Create deploy hooks in Settings > Git > Deploy Hooks:

# Create via dashboard, then trigger with POST
curl -X POST "https://api.vercel.com/v1/integrations/deploy/prj_xxx/hook_xxx"

# Common CMS integrations:
# Contentful — webhook URL → Vercel deploy hook
# Sanity — GROQ listener → deploy hook
# Strapi — lifecycle hook → deploy hook

Step 6: Deployment Monitoring

# List recent production deployments
vercel ls --prod --limit=5

# Check deployment state
curl -s -H "Authorization: Bearer $VERCEL_TOKEN" \
  "https://api.vercel.com/v6/deployments?target=production&limit=5&projectId=prj_xxx" \
  | jq '.deployments[] | {uid, url, state, createdAt}'

# Monitor deployment logs in real-time
vercel logs https://yourdomain.com --follow

Deploy Lifecycle

git push main
  → Vercel builds (BUILDING)
    → Build succeeds (READY)
      → Traffic routes to new deployment
        → Old deployment kept for instant rollback

Output

  • Production deployment live via CLI, API, or Git push
  • Instant rollback configured to previous deployment
  • Rolling releases for gradual traffic shifting
  • Function regions optimized for user geography
  • Deploy hooks for CMS-triggered rebuilds

Error Handling

ErrorCauseSolution
DEPLOYMENT_BLOCKEDDeployment freeze or branch protectionDisable freeze in Settings or use —force
Promotion failsPreview deployment has different env varsVerify env vars match between preview and production
Rolling release stuckError threshold exceededFix the code, then restart the rollout
Deploy hook returns 404Hook deleted or project ID wrongRecreate the hook in Settings > Git
Region not availablePlan doesn’t support multi-regionUpgrade to Pro or Enterprise

Resources

Next Steps

For webhook integration, see vercel-webhooks-events.