Enzonic CI
আপনার GitHub রিপোজিটরির জন্য CI, Enzonic রানারে।
Enzonic CI প্রতিটি push ও pull request-এ আপনার টেস্ট ও বিল্ড চালায়; প্রতিটি জব Enzonic-এর পরিচালিত Linux রানারে নিজস্ব sandbox-এ চলে। লাইভ লগ, ডিপেনডেন্সি ক্যাশ ও আর্টিফ্যাক্ট, Deploy ও Databases-এর একই অ্যাকাউন্ট ও প্ল্যানে।
প্রতিটি প্ল্যানে অন্তর্ভুক্ত, Free-সহ। CI মিনিট, সমান্তরাল জব ও সংরক্ষণের মেয়াদ আপনার প্ল্যানের সঙ্গেই আসে।

একই ওয়ার্কফ্লোতে GitHub Actions-এর চেয়ে দ্রুত
একটি ওয়ার্কফ্লো দুই প্ল্যাটফর্মেই চালানো হয়: npm ci ও vitest স্যুট সহ একটি Node জব, এবং go test সহ একটি Go জব। কম হলে ভালো।
| ধাপ | Enzonic CI | GitHub Actions |
|---|---|---|
| পুরো রান, পুশ থেকে প্রতিটি জব শেষ হওয়া পর্যন্ত (ওয়ার্ম ক্যাশ) | ২২ s | ৩৭ s |
| Checkout | ০.০৬ s | ১ s |
| ওয়ার্ম ক্যাশসহ npm ci | ০.০৯ s | ৩ s |
| কোল্ড ক্যাশসহ go test | ২.৮ s | ২০ s |
| Go জব, শুরু থেকে শেষ পর্যন্ত (ওয়ার্ম ক্যাশ) | ২ s | ১১ s |
যেখানে আমরা ধীর: lockfile বদলানোর পর প্রথম npm ci-তে সময় লাগে ৬.৮ s, অথচ GitHub-এ লাগে ৪ s, কারণ npm যে ফাইলই খোলে তা জবের sandbox-এর ভিতর দিয়ে যায়। একই lockfile-এ পরের প্রতিটি রানে লাগে ০.০৯ s।
১ নভেম্বর, ২০২৬ তারিখে একই .github/workflows/ci.yml দিয়ে দুই প্ল্যাটফর্মেই মাপা হয়েছে (GitHub ubuntu-latest-এ), একটি বেঞ্চমার্ক রিপোজিটরিতে। ৩টি রানের মধ্যমা, সেকেন্ডে; ওয়ার্ম রানে প্রতিটি প্ল্যাটফর্মের ক্যাশ ছিল। GitHub-এর কোল্ড সংখ্যা একটিমাত্র প্রথম রান থেকে নেওয়া।
আপনার চেনা কনফিগারেশন
লিখুন .enzonic/ci.yml, অথবা আপনার GitHub Actions ওয়ার্কফ্লো রাখুন: Enzonic CI .github/workflows-এর একটি সমর্থিত অংশ চালায় এবং যা চালাতে পারে না তা জানায়, যেমন অসমর্থিত অ্যাকশন, Windows বা macOS রানার এবং পুনর্ব্যবহারযোগ্য ওয়ার্কফ্লো, একটি বার্তাসহ।
যা রান শুরু করে
- Push ও ট্যাগ
- Pull request
- সময়সূচি
- কনসোল থেকে ম্যানুয়াল রান এবং API থেকে শুরু হওয়া রান
জবগুলো Linux রানারে চলে। প্রতিটি জব নিজস্ব gVisor sandbox পায়, ব্যক্তিগত নেটওয়ার্কে প্রবেশাধিকার ছাড়া।
name: CI
on:
push:
branches: [main]
pull_request:
jobs:
test:
image: node:22-bookworm-slim
services:
postgres:
image: postgres:17-alpine
env:
POSTGRES_PASSWORD: postgres
env:
DATABASE_URL: postgres://postgres:postgres@postgres:5432/postgres
steps:
- name: Install
run: npm ci
- name: Test
run: npm testএকটি উদাহরণ। ডকসের CI রেফারেন্সে প্রতিটি সমর্থিত কী ও অ্যাকশন তালিকাভুক্ত আছে।
প্রতিটি push ও pull request এক তালিকায়
সংযুক্ত প্রতিটি রিপোজিটরির রান, তাদের অবস্থা, ইভেন্ট, ব্রাঞ্চ, commit ও সময়কাল সহ। কিছু চলার সময় তালিকা রিফ্রেশ হয়, এবং প্রতিটি রান GitHub-এ একটি চেক জানায়।

এটি যা করে
- ম্যাট্রিক্স বিল্ড ও জব নির্ভরতা
- কাজকে জবে ভাগ করুন, একটি ম্যাট্রিক্সে ছড়িয়ে দিন এবং needs দিয়ে জবগুলো সাজান।
- সার্ভিস কন্টেইনার
- কোনো জবের পাশে Postgres বা অন্য সার্ভিস চালু করুন; রানের সময়কাল জুড়ে এটি জবের নেটওয়ার্কে যুক্ত হয়।
- প্রতি জবের জন্য একটি sandbox
- প্রতিটি জব নিজের নেটওয়ার্কে নিজস্ব gVisor sandbox-এ চলে, ব্যক্তিগত নেটওয়ার্কে প্রবেশাধিকার ছাড়া।
- লাইভ লগ ও আর্টিফ্যাক্ট
- প্রতিটি ধাপ চলার সময় অনুসরণ করুন, ব্যর্থ জবগুলো আবার চালান এবং আপনার প্ল্যান যতদিন রাখে ততদিন আর্টিফ্যাক্ট ডাউনলোড করুন।
- fork থেকে নিরাপদ pull request
- fork থেকে আসা pull request-এর রান ডিফল্টভাবে কোনো সিক্রেট পায় না।
- ব্যর্থ জবের সমাধান
- Enzica, Enzonic-এর সহকারী, একটি ব্যর্থ জবের লগ পড়তে পারে এবং একটি সমাধানের প্রস্তাব দিতে পারে, যা কিছু পরিবর্তন হওয়ার আগে আপনি পর্যালোচনা করেন।
ডিপেনডেন্সি ক্যাশ
ক্যাশ প্রতি রিপোজিটরিতে আপনার প্ল্যানের ক্যাশ সীমার মধ্যে রাখা হয়।
- npm
- pnpm
- Yarn
- Bun
- pip
- Go
- Cargo
- Maven
- Gradle
প্রতি প্ল্যানে CI সীমা
CI মিনিট প্রতি মাসে রিসেট হয় এবং প্রতিটি সম্পন্ন জবের জন্য গণনা করা হয়। পেইড প্ল্যানে মিনিট, সমান্তরাল জব, বড় ক্যাশ ও দীর্ঘ সংরক্ষণ যুক্ত হয়।
| প্ল্যান | বিনামূল্যেবিনামূল্যে | Starter৫ US$ প্রতি মাসে | Pro১০ US$ প্রতি মাসে | Growth১৯ US$ প্রতি মাসে | Business২৯ US$ প্রতি মাসে |
|---|---|---|---|---|---|
| CI মিনিট | প্রতি মাসে ৩,০০০ | প্রতি মাসে ৫,০০০ | প্রতি মাসে ৬,০০০ | প্রতি মাসে ১৫,০০০ | প্রতি মাসে ৬০,০০০ |
| একই সময়ে জব | ২ | ৪ | ৬ | ১০ | ২০ |
| জব টাইমআউট | ৩৬০ মিনিট | ৩৬০ মিনিট | ৩৬০ মিনিট | ৪৮০ মিনিট | ৭২০ মিনিট |
| ডিপেনডেন্সি ক্যাশ | ২ GB | ৫ GB | ১০ GB | ২০ GB | ৫০ GB |
| সংরক্ষিত আর্টিফ্যাক্ট | ৯০ দিন | ৯০ দিন | ৯০ দিন | ১৮০ দিন | ৪০০ দিন |
| সংরক্ষিত লগ | ১৪ দিন | ৩০ দিন | ৩০ দিন | ৬০ দিন | ৯০ দিন |
- আপনার প্রথম পেইড মাসে ৫০% ছাড়
- পেইড Enzonic গেম প্ল্যানসহ প্রতি মাসে ২৫% ছাড়
মূল্য মার্কিন ডলারে। পেইড প্ল্যান প্রতি মাসে আপনার Enzonic ব্যালেন্স থেকে নবায়ন হয়, বা ব্যালেন্স শূন্য হলে কার্ড থেকে। বিনামূল্যে প্ল্যান কখনো কার্ড চায় না। কনসোল সবসময় আপনার বর্তমান প্ল্যানের সীমা দেখায়।
ক্লাউড গ্রান্ট
যারা অন্যদের জন্য তৈরি করে, তাদের জন্য বিনামূল্যের Pro বা Business সময় এবং ৫০০ US$ পর্যন্ত Cloud ক্রেডিট।
- 3, 6 বা 12 মাসের জন্য Pro বা Business
- আপনার Enzonic ব্যালেন্সে ৫০০ US$ পর্যন্ত Cloud ক্রেডিট
- একটি গ্রান্ট Deploy, Databases, CI ও প্ল্যানের Rapidfile সীমা কভার করে
- একজন মানুষ পড়েন, সাধারণত কয়েক দিনের মধ্যে উত্তর দেওয়া হয়
enzonic.dev-এর ফর্ম দিয়ে আবেদন করুন। একটি বিনামূল্যের Enzonic অ্যাকাউন্টই যথেষ্ট, কার্ড লাগবে না।
- ওপেন সোর্স
- শিক্ষার্থী
- অলাভজনক সংস্থা
- স্টার্টআপ
- শিক্ষাবিদ
- হ্যাকাথন
প্রশ্নসমূহ
একটি রিপোজিটরি সংযুক্ত করুন, পরের পুশ নিজেই চলুক।
অ্যাপ, তার ডেটাবেস বা আপলোড ডেপ্লয় বা হোস্ট করবেন?