Skip to content

Enzonic CI

CI за твоите GitHub репозитории, на Enzonic runner-и.

Enzonic CI изпълнява тестовете и сборките ти при всеки push и pull request, като всяка задача е в собствен sandbox на Linux runner-и, които Enzonic управлява. Живи логове, кешове на зависимости и артефакти, в същия акаунт и план като Deploy и Databases.

Включено във всеки план, включително Free. Минутите за CI, паралелните задачи и периодът на съхранение идват с вашия план.

Enzonic CI: конвейери на три репозитория с последните им изпълнения и обяснен проблем в конфигурацията

По-бързо от GitHub Actions при същия работен процес

Един работен процес, изпълнен на двете платформи: Node задача с npm ci и vitest пакет, и Go задача с go test. По-ниското е по-добре.

СтъпкаEnzonic CIGitHub Actions
Цялото изпълнение, от push до завършване на всяка задача (топли кешове)37 s
Checkout1 s
npm ci с топъл кеш3 s
go test със студени кешове20 s
Go задача от начало до край (топли кешове)11 s

Където сме по-бавни: първият npm ci след промяна на lockfile отнема 6,8 s, срещу 4 s в GitHub, защото всеки файл, който npm разопакова, минава през sandbox-а на задачата. Всяко следващо изпълнение със същия lockfile отнема 0,09 s.

Измерено на 1 ноември 2026 г. със същия .github/workflows/ci.yml на двете платформи (GitHub на ubuntu-latest), в репозиторий за бенчмарк. Медиани от 3 изпълнения, в секунди; при топлите изпълнения всяка платформа имаше кешовете си. Студените стойности за GitHub са от едно първо изпълнение.

Конфигурация, която вече познаваш

Напиши .enzonic/ci.yml или запази GitHub Actions работните потоци: Enzonic CI изпълнява поддържано подмножество от .github/workflows и докладва какво не може да изпълни, например неподдържани действия, Windows или macOS runner-и и преизползваеми работни потоци, със съобщение.

Какво стартира изпълнение

  • Push-ове и тагове
  • Pull request-ове
  • Графици
  • Ръчни изпълнения от конзолата и изпълнения, стартирани през API

Задачите се изпълняват на Linux runner-и. Всяка задача получава собствен 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.
Service контейнери
Стартирай Postgres или друга услуга до задача; тя се включва в мрежата на задачата за времето на изпълнението.
По един sandbox за всяка задача
Всяка задача работи в собствен gVisor sandbox, в собствена мрежа, без достъп до частни мрежи.
Живи логове и артефакти
Следи всяка стъпка, докато се изпълнява, пусни отново неуспешните задачи и изтегляй артефакти, докато планът ти ги пази.
Безопасни pull request-ове от fork-ове
Изпълненията за pull request-ове от fork-ове по подразбиране не получават тайни.
Поправки за неуспешни задачи
Enzica, асистентът на Enzonic, може да прочете логовете на неуспешна задача и да предложи поправка, която ти преглеждаш, преди да се промени каквото и да е.

Кешове на зависимостите

Кешовете се пазят за всяко хранилище в рамките на размера на кеша на плана ти.

  • npm
  • pnpm
  • Yarn
  • Bun
  • pip
  • Go
  • Cargo
  • Maven
  • Gradle

CI лимити по план

CI минутите се нулират всеки месец и се броят за всяка завършена задача. Платените планове добавят минути, паралелни задачи, по-голям кеш и по-дълго съхранение.

ПланБезплатенБезплатноStarter5 щ.д. на месецPro10 щ.д. на месецGrowth19 щ.д. на месецBusiness29 щ.д. на месец
CI минути3000 на месец5000 на месец6000 на месец15 000 на месец60 000 на месец
Задачи едновременно2461020
Време за задача360 мин360 мин360 мин480 мин720 мин
Кеш на зависимостите2 GB5 GB10 GB20 GB50 GB
Запазени артефакти90 дни90 дни90 дни180 дни400 дни
Запазени логове14 дни30 дни30 дни60 дни90 дни
  • 50% отстъпка за първия ти платен месец
  • 25% отстъпка всеки месец с платен игрови план на Enzonic

Цените са в щатски долари. Платените планове се подновяват месечно от баланса ти в Enzonic, а когато балансът е празен, с карта. Безплатният план никога не изисква карта. Конзолата винаги показва лимитите на текущия ти план.

Сравни всеки лимит на enzonic.dev

Cloud грантове

Безплатно време на Pro или Business и до 500 щ.д. Cloud кредит за хора, които създават за други.

  • Pro или Business за 3, 6 или 12 месеца
  • До 500 щ.д. Cloud кредит в твоя Enzonic баланс
  • Един грант покрива Deploy, Databases, CI и Rapidfile лимитите на плана
  • Прегледа човек, обикновено отговаря в рамките на няколко дни

Кандидатствай с формата на enzonic.dev. Достатъчен е безплатен Enzonic акаунт и без карта.

  • Отворен код
  • Студенти
  • Нестопански организации
  • Стартиращи компании
  • Преподаватели
  • Хакатони

Въпроси

Често не. Enzonic CI чете .enzonic/ci.yml или поддържано подмножество от .github/workflows. Стъпките, които не може да изпълни, например Windows или macOS runner-и и преизползваеми работни потоци, се докладват с ясно съобщение, вместо да се провалят тихо.

Свържете репозитории и оставете следващия push да се изпълни.

Разгръщаш и приложението, базата му данни или качванията му също?