vercel-cli-with-tokens

استقرار امن و سریع پروژه‌ها روی Vercel با مدیریت توکن و محیط‌ها

این مهارت استقرار پروژه‌ها روی Vercel را با استفاده از Vercel CLI و VERCEL_TOKEN انجام می‌دهد؛ از بررسی توکن در محیط و فایل‌های .env تا اتصال پروژه، تعیین scope تیم، استقرار Preview و بررسی وضعیت Deployment.

همچنین مدیریت Environment Variables، دریافت تنظیمات محیطی و عیب‌یابی خطاهای احراز هویت را پوشش می‌دهد. استقرار Production فقط با درخواست صریح انجام می‌شود و بدون تأیید شما هیچ Commitای به Git Push نخواهد شد.

چه چیزی می‌گیرید

  • بررسی خودکار `VERCEL_TOKEN` در محیط و فایل‌های `.env`
  • استقرار Preview با Vercel CLI و `team scope` مشخص
  • اتصال پروژه‌های جدید به Vercel و بررسی وضعیت Deployment
  • افزودن، فهرست‌کردن و دریافت Environment Variables برای محیط‌های مختلف
  • راهنمای عیب‌یابی خطاهای احراز هویت و توکن نامعتبر

برای چه کاری خوب است

  • توسعه‌دهندگانی که می‌خواهند پروژه را از ترمینال روی Vercel Deploy کنند
  • تیم‌هایی که چند پروژه یا Team در Vercel دارند و به مدیریت `scope` نیاز دارند
  • سناریوهایی که باید Preview Deployment ساخته و وضعیت آن بررسی شود
  • پروژه‌هایی که Environment Variables آن‌ها باید از طریق Vercel CLI مدیریت شود

برای چه کاری نیست

  • استقرار روی سرویس‌هایی غیر از Vercel
  • استقرار Production بدون درخواست و تأیید صریح کاربر
  • زمانی که توکن معتبر Vercel در دسترس نیست و امکان تأمین آن وجود ندارد

دربارهٔ این اسکیل

A) VERCEL_TOKEN is already set in the environment

printenv VERCEL_TOKEN

If this returns a value, you're ready. Skip to Step 2.

B) Token is in a .env file under VERCEL_TOKEN

grep '^VERCEL_TOKEN=' .env 2>/dev/null

If found, export it:

export VERCEL_TOKEN=$(grep '^VERCEL_TOKEN=' .env | cut -d= -f2-)

C) Token is in a .env file under a different name

Look for any variable that looks like a Vercel token (Vercel tokens typically start with vca_):

grep -i 'vercel' .env 2>/dev/null

Inspect the output to identify which variable holds the token, then export it as VERCEL_TOKEN:


...

vercel deploy --scope <team-slug> -y --no-wait

Production (only when explicitly requested):

vercel deploy --prod --scope <team-slug> -y --no-wait

Check status:

vercel inspect <deployment-url>

Full Deploy Flow (no project ID — need to link)

Use this when you have a token and team but no pre-existing project ID.

...

Set for all environments

echo "value" | vercel env add VAR_NAME --scope <team-slug>

Set for a specific environment (production, preview, development)

echo "value" | vercel env add VAR_NAME production --scope <team-slug>

List environment variables

vercel env ls --scope <team-slug>

Pull env vars to local .env.local file

...

  • Paid add-ons available: SAML SSO, HIPAA BAA, Flags Explorer, Observability Plus, Speed Insights, Web Analytics Plus.

Full details: https://vercel.com/docs/plans/pro-plan

Working Agreement

  • Never pass VERCEL_TOKEN as a --token flag. Export it as an environment variable and let the CLI read it natively.
  • Check the environment for tokens before asking the user. Look in the current env and .env files first.
  • Default to preview deployments. Only deploy to production when explicitly asked.
  • Ask before pushing to git. Never push commits without the user's approval.
  • **Do not modify .vercel/ files

...

Troubleshooting

Token not found

Check the environment and any .env files present:

printenv | grep -i vercel
grep -i vercel .env 2>/dev/null

Authentication error

If the CLI fails with Authentication required:

  • The token may be expired or invalid.
  • Verify: vercel whoami (uses VERCEL_TOKEN from environment).

دانلود ZIP