Enzonic CI
GitHub 저장소를 위한 CI, Enzonic 러너에서 실행돼요.
Enzonic CI는 모든 push와 pull request마다 테스트와 빌드를 실행해요. 각 작업은 Enzonic이 운영하는 Linux 러너의 독립된 샌드박스에서 돌아가요. 실시간 로그, 의존성 캐시, 아티팩트를 Deploy, Databases와 같은 계정과 요금제에서 쓸 수 있어요.
모든 요금제에 포함돼요. Free 요금제도 마찬가지예요. CI 분, 병렬 작업, 보관 기간은 요금제에 함께 들어 있어요.

같은 워크플로에서 GitHub Actions보다 빨라요
한 워크플로를 두 플랫폼에서 실행해요. npm ci와 vitest 스위트를 쓰는 Node 작업, go test를 쓰는 Go 작업이에요. 낮을수록 좋아요.
| 단계 | Enzonic CI | GitHub Actions |
|---|---|---|
| 전체 실행, push부터 모든 작업이 끝날 때까지(캐시 준비 완료) | 22초 | 37초 |
| Checkout | 0.06초 | 1초 |
| 캐시가 준비된 상태의 npm ci | 0.09초 | 3초 |
| 캐시 없이 실행한 go test | 2.8초 | 20초 |
| Go 작업, 시작부터 끝까지(캐시 준비 완료) | 2초 | 11초 |
느린 부분도 있어요. 잠금 파일이 바뀐 뒤 처음 실행하는 npm ci는 6.8초이 걸리고, GitHub에서는 4초이 걸려요. npm이 풀어내는 파일마다 작업의 샌드박스를 거치기 때문이에요. 같은 잠금 파일로 그다음부터 실행하면 0.09초이 걸려요.
2026년 11월 1일에 두 플랫폼 모두 같은 .github/workflows/ci.yml로 측정했어요. GitHub는 ubuntu-latest에서 실행했고, 벤치마크 저장소를 사용했어요. 3회 실행의 중앙값이며 단위는 초예요. 웜 실행은 각 플랫폼의 캐시가 준비된 상태였어요. GitHub의 콜드 수치는 첫 실행 한 번에서 나온 값이에요.
이미 익숙한 설정 그대로
.enzonic/ci.yml을 작성하거나 GitHub Actions 워크플로를 그대로 유지하세요. Enzonic CI는 .github/workflows의 지원되는 부분만 실행하고, 실행할 수 없는 항목(예: 지원되지 않는 액션, Windows 또는 macOS 러너, 재사용 워크플로)은 메시지와 함께 알려 줘요.
실행을 시작하는 조건
- 푸시와 태그
- Pull request
- 예약
- 콘솔에서 수동으로 실행하거나 API로 시작한 실행
작업은 Linux 러너에서 실행돼요. 각 작업은 전용 gVisor 샌드박스를 받으며, 개인 네트워크에는 접근할 수 없어요.
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를 한 목록에서
연결된 모든 저장소의 실행을 상태, 이벤트, 브랜치, 커밋, 소요 시간과 함께 보여 줘요. 실행 중인 항목이 있으면 목록이 자동으로 새로고침되고, 각 실행은 GitHub에 체크 결과를 보고해요.

주요 기능
- 매트릭스 빌드와 작업 의존 관계
- 작업을 나누고, 매트릭스로 확장하고, needs로 작업 순서를 정하세요.
- 서비스 컨테이너
- 작업 옆에 Postgres나 다른 서비스를 띄울 수 있어요. 서비스는 실행이 끝날 때까지 작업의 네트워크에 함께 연결돼요.
- 작업마다 샌드박스 하나
- 각 작업은 자체 네트워크의 자체 gVisor 샌드박스에서 실행되며, 개인 네트워크에는 접근할 수 없어요.
- 실시간 로그와 아티팩트
- 실행되는 각 단계를 실시간으로 확인하고, 실패한 작업을 다시 실행하며, 요금제가 보관하는 동안 아티팩트를 내려받을 수 있어요.
- 포크에서 오는 안전한 pull request
- 포크에서 온 pull request의 실행에는 기본적으로 비밀 값이 전달되지 않아요.
- 실패한 작업 수정
- Enzonic의 도우미 Enzica가 실패한 작업의 로그를 읽고, 무엇이든 바뀌기 전에 검토할 수 있는 수정안을 제안할 수 있어요.
의존성 캐시
캐시는 저장소별로, 요금제의 캐시 용량 안에서 보관돼요.
- npm
- pnpm
- Yarn
- Bun
- pip
- Go
- Cargo
- Maven
- Gradle
요금제별 CI 한도
CI 분은 매달 초기화되며 완료된 작업 단위로 계산돼요. 유료 요금제에서는 분, 병렬 작업, 더 큰 캐시, 더 긴 보관 기간이 추가돼요.
| 요금제 | 무료무료 | StarterUS$5 월 | ProUS$10 월 | GrowthUS$19 월 | BusinessUS$29 월 |
|---|---|---|---|---|---|
| CI 분 | 월 3,000 | 월 5,000 | 월 6,000 | 월 15,000 | 월 60,000 |
| 동시에 실행되는 작업 | 2 | 4 | 6 | 10 | 20 |
| 작업 제한 시간 | 360분 | 360분 | 360분 | 480분 | 720분 |
| 의존성 캐시 | 2 GB | 5 GB | 10 GB | 20 GB | 50 GB |
| 보관되는 아티팩트 | 90일 | 90일 | 90일 | 180일 | 400일 |
| 보관되는 로그 | 14일 | 30일 | 30일 | 60일 | 90일 |
- 첫 유료 달 50% 할인
- 유료 Enzonic 게임 요금제를 쓰면 매달 25% 할인
가격은 미국 달러 기준이에요. 유료 요금제는 Enzonic 잔액에서 매월 자동 갱신되고, 잔액이 없으면 카드로 결제해요. 무료 요금제는 카드를 요구하지 않아요. 콘솔에서는 언제나 현재 요금제의 한도를 확인할 수 있어요.
Cloud 지원 프로그램
다른 사람을 위해 만드는 분들께 무료 Pro 또는 Business 이용권과 최대 US$500의 Cloud 크레딧을 드려요.
- Pro 또는 Business 3, 6, 12개월
- Enzonic 잔액에 최대 US$500의 Cloud 크레딧
- 하나의 지원금으로 Deploy, Databases, CI와 요금제의 Rapidfile 한도를 모두 쓸 수 있어요
- 사람이 직접 검토하며, 보통 며칠 안에 답변합니다.
enzonic.dev의 양식으로 신청하세요. 무료 Enzonic 계정이면 충분하며 카드는 필요 없어요.
- 오픈소스
- 학생
- 비영리 단체
- 스타트업
- 교육자
- 해커톤
자주 묻는 질문
저장소를 연결하면 다음 push부터 바로 실행돼요.
앱 배포, 데이터베이스나 업로드 호스팅도 필요하신가요?