Vercel CI معرفی شد: فقط تسکهایی که عوض شدن اجرا میشن
خلاصهٔ کاملتر
ورسل میگه ایجنتهای کدنویسی دارن بیشتر از همیشه pull request باز میکنن و هر کدوم باید منتظر CI بمونه تا کسی بتونه ریویو یا مرجش کنه. مشکل اینه که بیشتر سیستمهای CI روی هر push کل workflow رو اجرا میکنن، حتی برای تغییر یه خطی. برای همین ورسل Vercel CI رو تو نسخهٔ بتا معرفی کرده که فقط تسکهای تحت تأثیر تغییر رو اجرا میکنه. به گفتهٔ ورسل، تو خود شرکت زمان از git push تا قبول شدن CI ۲ تا ۶ برابر سریعتر شده.
Vercel CI برای فهمیدن تسکها و وابستگیهاشون از Turborepo استفاده میکنه (ابزاری برای مدیریت و کش کردن تسکهای build تو مونوریپوها). یعنی فایل turbo.json رو میخونه و اگه از قبل Turborepo دارید، کانفیگ CI جدایی لازم نیست. اگه ندارید، کافیه turbo.json و پکیج turbo رو اضافه کنید. تو ریپوهای تکپکیجی هم کار میکنه. بعدش فقط تسکهایی که میخواید CI اجراشون کنه رو تگ میزنید:
{
"tasks": {
"lint": {
"tags": ["ci"]
}
}
}همین تگ ci برای شروع کافیه. فایل YAML جدایی برای workflow لازم نیست، کانفیگ CI و turbo.json از هم جدا نمیافتن و Remote Cache هم پیشفرض روشنه. وقتی کد push میشه، Vercel CI تشخیص میده کدوم تسکها باید اجرا بشن. تسکهایی که ورودیشون عوض نشده از کش میان. بقیه هر کدوم روی ماشین جدای خودشون اجرا میشن که با Hive، لایهٔ محاسباتی ورسل، تأمین میشه و هر تسک به محض تموم شدن وابستگیهاش شروع میشه. یعنی هر تسک دقیقاً همونقدر منابع میگیره که لازم داره.
بعد از راهاندازی، میشه CI رو از داشبورد ورسل، Vercel CLI یا Vercel MCP دنبال کرد. اگه چیزی fail بشه، مستقیم میرید سراغ همون تسک، میبینید چه چیزهایی پشتش گیر کردن و لاگش رو باز میکنید. حتی میشه تو اجراهای اخیر گشت تا ببینید یه تست کل هفته flaky (یعنی گاهی پاس و گاهی fail) بوده یا نه. برای این کار دستورهایی مثل vc ci ls، vc ci inspect و vc ci logs هست. Vercel CI نتیجه رو بهصورت یه check روی pull request گیتهاب میذاره، پس قوانین branch protection فعلیتون مثل قبل جلوی مرج رو میگیرن.
به گفتهٔ ورسل، Vercel CI تا حالا نزدیک ۸ میلیون تسک تو ریپوهای خودشون و بتای خصوصی اجرا کرده. قبل از نسخهٔ نهایی قراره observability پیشرفتهتر، یه دستور vc ci برای اجرای توزیعشده قبل از push و انتخاب دقیقتر تستها اضافه بشه. بتا الان روی همهٔ پلنها در دسترسه.
نکات کلیدی:
- Vercel CI تو نسخهٔ بتا روی همهٔ پلنهای ورسل در دسترسه
- فقط تسکهایی اجرا میشن که تغییر کد روشون اثر داشته و بقیه از Remote Cache میان
- تنظیمات از turbo.json خونده میشه و با تگ ci روی تسکها فعال میشه، بدون YAML جدا
- هر تسک روی ماشین جدا با زیرساخت Hive اجرا میشه
- ورسل میگه زمان git push تا CI سبز تو پروژههای خودش ۲ تا ۶ برابر کمتر شده
- تا الان نزدیک ۸ میلیون تسک اجرا شده




