Skip to content

Enzonic CI

আপনার GitHub রিপোজিটরির জন্য CI, Enzonic রানারে।

Enzonic CI প্রতিটি push ও pull request-এ আপনার টেস্ট ও বিল্ড চালায়; প্রতিটি জব Enzonic-এর পরিচালিত Linux রানারে নিজস্ব sandbox-এ চলে। লাইভ লগ, ডিপেনডেন্সি ক্যাশ ও আর্টিফ্যাক্ট, Deploy ও Databases-এর একই অ্যাকাউন্ট ও প্ল্যানে।

প্রতিটি প্ল্যানে অন্তর্ভুক্ত, Free-সহ। CI মিনিট, সমান্তরাল জব ও সংরক্ষণের মেয়াদ আপনার প্ল্যানের সঙ্গেই আসে।

Enzonic CI: তিনটি রিপোজিটরির পাইপলাইন তাদের সর্বশেষ রান ও একটি কনফিগারেশন সমস্যার ব্যাখ্যা সহ

একই ওয়ার্কফ্লোতে GitHub Actions-এর চেয়ে দ্রুত

একটি ওয়ার্কফ্লো দুই প্ল্যাটফর্মেই চালানো হয়: npm ci ও vitest স্যুট সহ একটি Node জব, এবং go test সহ একটি Go জব। কম হলে ভালো।

ধাপEnzonic CIGitHub Actions
পুরো রান, পুশ থেকে প্রতিটি জব শেষ হওয়া পর্যন্ত (ওয়ার্ম ক্যাশ)৩৭ s
Checkout১ s
ওয়ার্ম ক্যাশসহ npm ci৩ s
কোল্ড ক্যাশসহ go test২০ s
Go জব, শুরু থেকে শেষ পর্যন্ত (ওয়ার্ম ক্যাশ)১১ 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 পায়, ব্যক্তিগত নেটওয়ার্কে প্রবেশাধিকার ছাড়া।

.enzonic/ci.yml
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-এ একটি চেক জানায়।

Enzonic CI: প্রতিটি পাইপলাইনের রান তাদের অবস্থা, ব্রাঞ্চ, commit ও সময়কাল সহ

এটি যা করে

ম্যাট্রিক্স বিল্ড ও জব নির্ভরতা
কাজকে জবে ভাগ করুন, একটি ম্যাট্রিক্সে ছড়িয়ে দিন এবং 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 ব্যালেন্স থেকে নবায়ন হয়, বা ব্যালেন্স শূন্য হলে কার্ড থেকে। বিনামূল্যে প্ল্যান কখনো কার্ড চায় না। কনসোল সবসময় আপনার বর্তমান প্ল্যানের সীমা দেখায়।

enzonic.dev-এ প্রতিটি সীমা তুলনা করুন

ক্লাউড গ্রান্ট

যারা অন্যদের জন্য তৈরি করে, তাদের জন্য বিনামূল্যের Pro বা Business সময় এবং ৫০০ US$ পর্যন্ত Cloud ক্রেডিট।

  • 3, 6 বা 12 মাসের জন্য Pro বা Business
  • আপনার Enzonic ব্যালেন্সে ৫০০ US$ পর্যন্ত Cloud ক্রেডিট
  • একটি গ্রান্ট Deploy, Databases, CI ও প্ল্যানের Rapidfile সীমা কভার করে
  • একজন মানুষ পড়েন, সাধারণত কয়েক দিনের মধ্যে উত্তর দেওয়া হয়

enzonic.dev-এর ফর্ম দিয়ে আবেদন করুন। একটি বিনামূল্যের Enzonic অ্যাকাউন্টই যথেষ্ট, কার্ড লাগবে না।

  • ওপেন সোর্স
  • শিক্ষার্থী
  • অলাভজনক সংস্থা
  • স্টার্টআপ
  • শিক্ষাবিদ
  • হ্যাকাথন

প্রশ্নসমূহ

প্রায়ই না। Enzonic CI .enzonic/ci.yml অথবা .github/workflows-এর একটি সমর্থিত অংশ পড়ে। যে ধাপগুলো চালাতে পারে না, যেমন Windows বা macOS রানার ও পুনর্ব্যবহারযোগ্য ওয়ার্কফ্লো, সেগুলো নীরবে ব্যর্থ না হয়ে একটি স্পষ্ট বার্তায় জানানো হয়।

একটি রিপোজিটরি সংযুক্ত করুন, পরের পুশ নিজেই চলুক।

অ্যাপ, তার ডেটাবেস বা আপলোড ডেপ্লয় বা হোস্ট করবেন?