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_TOKENas a--tokenflag. 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
.envfiles 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(usesVERCEL_TOKENfrom environment).