push کنید. بقیهاش خودکار است.
هر push روی سرورهای ما بیلد میشود، بررسیهای امنیتی و آزمونهای شما را میگذراند و مستقر میشود. main پروداکشن است و هر شاخهٔ دیگر پیشنمایش خودش را میگیرد. سرویس CI جداگانهای لازم ندارید.
از push تا پروداکشن
یک مسیر برای برنامهها و فانکشنها، به هر زبانی.
push
به GitHub یا GitLab متصل، یا مستقیم به آدرس git ما داخل ایران.
git push origin mainبیلد و بررسی
چارچوب و زبان خودکار شناخته میشوند. اسکن رمزها، بررسی بستهها و آزمونهای شما در همان بیلد اجرا میشوند.
cloudhost apps builds my-shopپیشنمایش
هر شاخه آدرس خودش را میگیرد و لینکش در pull request نوشته میشود.
new-menu--my-shop.app.trustpage.irپروداکشن
یکباره یا با انتشار تدریجی. بازگشت به نسخهٔ قبلی یک دستور است.
cloudhost release start 42 --steps 10,50,100
بیلد و استقرار
اتصال GitHub و GitLab
حساب GitHub، GitLab یا GitLab خودمیزبان را متصل کنید و ریپازیتوری را وارد کنید. هر push بیلد میشود و وضعیتش روی commit و pull request نوشته میشود.
آدرس git داخل ایران
با git push cloudhost main مستقیم به ما بفرستید. بستهها هم از سرورهای ما داخل ایران نصب میشوند، پس در قطعی اینترنت بینالملل هم بیلد و منتشر میکنید.
بدون تنظیمات، قابل تغییر
زبان، چارچوب و دستورها از روی پروژه تشخیص داده میشوند. هر کدام را در cloudhost.toml یا داشبورد تغییر دهید: پوشهٔ ریشه برای monorepo، دستور نصب، دستور بیلد، نسخهٔ Node.js.
پیشنمایش برای هر شاخه
هر شاخه و pull request آدرس خودش را میگیرد، با شاخهٔ دیتابیس، باکت و متغیرهای خودش. شاخه را حذف کنید، پیشنمایش هم حذف میشود.
کش بیلد
وابستگیهای نصبشده و کش چارچوب بین بیلدها نگه داشته میشوند، پس بیلد بعدی سریعتر است. یک کلیک برای باطل کردن کش یا استقرار مجدد بدون کش.
مرحلهٔ ردکردن بیلد
دستوری که پیش از بیلد اجرا میشود و اگر چیزی عوض نشده، بیلد را رد میکند. در یک monorepo فقط پروژهای بیلد میشود که تغییر کرده.
صف، لغو و استقرار مجدد
نوبت هر بیلد در صف و دلیل انتظارش را ببینید. بیلد را لغو کنید یا همان commit را دوباره بیلد و مستقر کنید.
خطای بیلد قابل فهم
وقتی بیلد شکست میخورد، بالای لاگ نوشته میشود چه شد و چطور درستش کنید، با فایل و خط. یک ایجنت کدنویسی هم همین را از API و MCP میخواند.
هر زبانی
Next.js، Astro، سایت استاتیک و فانکشنهای JavaScript، و Python، Go، PHP، Java و زبانهای دیگر از روی کد.
امنیت در خود بیلد
DevSecOps بدون سرویس جداگانه و بدون تنظیمات، در همهٔ پلنها. نتیجهٔ هر بررسی در صفحهٔ استقرار، API، CLI و MCP است.
اسکن رمزها
کد هر بیلد پیش از اجرا برای کلید و رمزی که اشتباهی commit شده بررسی میشود. یافته فقط محلش را نشان میدهد؛ مقدار هیچوقت ذخیره یا نمایش داده نمیشود.
بستههای مخرب مسدود
نسخهای از یک بسته که مخرب شناخته شده نصب نمیشود. بیلد با نام بسته و نسخه متوقف میشود و کشهایی که آن را دارند پاک میشوند.
مهلت برای نسخههای تازه
نسخهای که کمتر از ۳ روز از انتشارش گذشته بهطور پیشفرض نصب نمیشود، چون بیشتر بستههای مخرب در همین مدت شناخته میشوند. هر پروژه میتواند مهلت را کوتاه کند یا یک نسخه را زودتر بپذیرد.
اسکریپت نصب خاموش
اسکریپتهای نصب بستهها اجرا نمیشوند، مگر برای بستههایی که در فهرست مجاز پروژه یا فهرست ما هستند.
وابستگیهای آسیبپذیر
هر بیلد فایل قفل را با پایگاه توصیههای امنیتی مقایسه میکند: بسته، نسخه، شدت و نسخهای که درستش کرده. بیلد با آسیبپذیری بحرانی متوقف میشود؛ توصیهٔ تازه با بررسی دوباره دیده میشود.
بررسیها پیش از پروداکشن
درخواست آزمایشی، آزمون پروژه، بررسی نوع و بررسیهایی که CI خودتان گزارش میکند. نسخه تا موفق شدن همه به پروداکشن نمیرود و بازدیدکنندهها نسخهٔ قبلی را میبینند.
فهرست اجزای نرمافزار (SBOM)
هر بیلد فهرست همهٔ بستهها و نسخههایشان را در قالب استاندارد CycloneDX دارد، برای بررسی مجوزها و پرسشنامههای امنیتی.
سند منشأ امضاشده
هر نسخهٔ مستقرشده سندی امضاشده دارد: از کدام commit، با کدام فایل قفل و با چه خروجی. هر کسی آن را با کلید عمومی ما تایید میکند.
بیلد ایزوله
هر بیلد در محیط جداگانهٔ خودش اجرا میشود، فقط به سرورهای بستهٔ ما و میزبان git شما دسترسی دارد و پس از پایان پاک میشود. فقط سکرتهایی که برای بیلد علامت خوردهاند در آن هستند.
انتشار با خیال راحت
انتشار تدریجی
بخشی از ترافیک پروداکشن را به نسخهٔ جدید بفرستید و قدمبهقدم بیشترش کنید، دستی یا با زمانبندی. اگر خطاها از آستانه بگذرند، خودبهخود متوقف میشود و ترافیک برمیگردد.
استقرار بدون انتشار
بیلد پروداکشن آماده میشود و در آدرس خودش منتظر میماند. هر وقت خواستید آن را در پروداکشن منتشر کنید یا تدریجی منتشرش کنید.
بازگشت به نسخهٔ قبلی
هر استقرار نسخهای تغییرناپذیر است. با یک دستور یا یک کلیک به هر نسخهٔ قبلی برگردید، بدون بیلد دوباره.
محافظت از استقرارها
پیشنمایشها، و اگر بخواهید پروداکشن، فقط برای اعضای تیم یا با رمز باز میشوند. لینک اشتراکی برای بیرون از تیم و توکن عبور برای آزمونهای خودکار.
محافظت از ناهمخوانی نسخهها
صفحهای که باز است از همان نسخهای پاسخ میگیرد که با آن بارگذاری شده، حتی پس از انتشار نسخهٔ جدید. بهطور پیشفرض روشن است.
اعلان در لحظه
وقتی بیلدی متوقف میشود یا انتشار تدریجی خودبهخود برمیگردد، اعضای تیم با ایمیل، پیامک یا وبهوک خبردار میشوند.
از ترمینال، از داشبورد، از ایجنت
هر کاری که در داشبورد میکنید با CLI، API و MCP هم میشود، پس یک ایجنت کدنویسی میتواند بیلد را دنبال کند و دلیل شکستش را بخواند.
cloudhost git connect github
cloudhost apps git import my-shop acme acme/shop
# every push to main deploys production; other branches get previewsبه ازای دقیقهٔ بیلد
بیلد ثانیه به ثانیه، از شروع تا پایان، حساب میشود. بررسیهای امنیتی بخشی از همان بیلدند و هزینهٔ جداگانه ندارند. پلن حرفهای بیلدهای همزمان بیشتر و کش بیلد بزرگتری دارد.
پرسشهای رایج
برای بیلد و استقرار نه. اگر آزمونهایتان را جای دیگری اجرا میکنید، CI شما نتیجه را با API گزارش میکند و آن بررسی پیش از پروداکشن الزامی میشود.
نسخهٔ زنده دست نمیخورد. توضیح خطا و راه حل بالای لاگ بیلد است، در داشبورد، CLI و MCP.
فقط سکرتهایی که برای بیلد علامت زدهاید. بقیه هیچوقت به محیط بیلد نمیرسند و فقط هنگام اجرا خوانده میشوند.
اسکن رمزها و بررسی آسیبپذیریها را میتوانید از توقف به هشدار تغییر دهید، اما خود اسکن همیشه اجرا میشود. بستهٔ مخرب همیشه مسدود است.
نه، چون کدش با متغیرهای پروژه اجرا میشد. pull requestهای شاخههای همان ریپازیتوری پیشنمایش میگیرند.
با git push به آدرس git ما همچنان منتشر میکنید. بستهها از سرورهای ما داخل ایران نصب میشوند، پس بیلد ادامه پیدا میکند.
ریپازیتوریتان را متصل کنید
push بعدی شما بیلد، بررسی و مستقر میشود.
فعلاً ثبتنام با کد دعوت است. اگر کد دارید، همین حالا حساب ایجاد کنید.
ثبتنام باکد ایمیلکد پیامکی