Skip to content

Enzonic CI

適用於您 GitHub 儲存庫的 CI, 運行於 Enzonic 執行器上。

Enzonic CI 會在每次推送與 Pull Request 時執行您的測試與建置,每個工作都在 Enzonic 自行營運的 Linux 執行器上,於獨立沙箱中執行。即時日誌、依賴快取與構件,與 Deploy 及 Databases 使用同一個帳戶與方案。

所有方案均包含,包括免費方案。CI 分鐘數、並行工作與保留期限都隨您的方案提供。

Enzonic CI: 三個儲存庫的管線,包含最新執行結果與一則已說明的設定問題

同一個工作流程下比 GitHub Actions 更快

同一個工作流程在兩個平台上執行:包含 npm ci 與 vitest 測試套件的 Node 工作,以及使用 go test 的 Go 工作。數值越低越好。

步驟Enzonic CIGitHub Actions
整個執行過程,從推送到所有工作完成(快取已預熱)37 秒
Checkout1 秒
快取已預熱時的 npm ci3 秒
快取冷啟動時的 go test20 秒
Go 工作,從開始到結束(快取已預熱)11 秒

我們較慢的地方:修改 lockfile 後的第一次 npm ci 需要 6.8 秒,GitHub 上則需要 4 秒,因為 npm 解壓的每個檔案都要經過工作的沙箱。之後每次使用相同 lockfile 的執行需要 0.09 秒。

於 2026年11月1日 測量,兩個平台使用相同的 .github/workflows/ci.yml(GitHub 使用 ubuntu-latest),在一個基準測試儲存庫中進行。取 3 次執行的中位數,單位為秒;預熱執行時各平台的快取都已就緒。GitHub 的冷啟動數據來自單次首次執行。

您已熟悉的設定方式

撰寫 .enzonic/ci.yml,或保留您的 GitHub Actions 工作流程:Enzonic CI 會執行 .github/workflows 中受支援的部分,並對無法執行的項目提供說明,例如不支援的 action、Windows 或 macOS 執行器,以及可重複使用的工作流程。

什麼會觸發執行

  • 推送與標籤
  • Pull Request
  • 排程
  • 從主控台手動執行,以及透過 API 啟動的執行

工作會在 Linux 執行器上執行。每個工作都有自己的 gVisor 沙箱,且無法存取私有網路。

.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 參考資料列出所有支援的鍵與 action。

所有推送與 Pull Request 集中在一個清單

所有已連結儲存庫的執行紀錄,包含狀態、事件、分支、提交與耗時。執行中清單會自動更新,每次執行都會在 GitHub 上回報一項檢查。

Enzonic CI: 每條管線的執行紀錄,包含狀態、分支、提交與耗時

功能

矩陣建置與工作相依性
將工作拆分成多個工作項目,依矩陣展開,並以 needs 安排工作順序。
服務容器
在工作旁啟動 Postgres 或其他服務;執行期間,它會加入該工作的網路。
每個工作一個沙箱
每個工作都在自己的網路與 gVisor 沙箱中執行,無法存取私有網路。
即時日誌與構件
即時追蹤每個步驟的執行狀況,重新執行失敗的工作,並在方案保留期間下載構件。
來自分支的安全 Pull Request
來自分支的 Pull Request 執行預設不會取得任何機密。
修正失敗的工作
Enzica 是 Enzonic 的助理,可以讀取失敗工作的日誌,並提出修正建議,由您審閱後才會進行任何變更。

依賴快取

快取依儲存庫保存,大小不超過您方案的快取上限。

  • 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
同時執行的工作2461020
工作逾時360 分鐘360 分鐘360 分鐘480 分鐘720 分鐘
依賴快取2 GB5 GB10 GB20 GB50 GB
保留的構件90 天90 天90 天180 天400 天
保留的日誌14 天30 天30 天60 天90 天
  • 首個付費月份享 50% 折扣
  • 付費 Enzonic 遊戲方案每月享 25% 折扣

價格以美元計算。付費方案每月從你的 Enzonic 餘額續費;餘額不足時改以信用卡扣款。免費方案永遠不會要求信用卡。主控台會隨時顯示你目前方案的上限。

在 enzonic.dev 比較所有限制

Cloud 補助金

為替他人建置的人提供免費 Pro 或 Business 時間,以及最多 US$500 的 Cloud 額度。

  • 3、6 或 12 個月的 Pro 或 Business
  • Enzonic 餘額中最多 US$500 的 Cloud 額度
  • 一項補助涵蓋 Deploy、Databases、CI 與該方案的 Rapidfile 限制
  • 由真人審閱,通常會在幾天內回覆

請使用 enzonic.dev 上的表單申請。只需要一個免費的 Enzonic 帳戶,不需信用卡。

  • 開源專案
  • 學生
  • 非營利組織
  • 新創公司
  • 教育工作者
  • 黑客松

常見問題

通常不需要。Enzonic CI 會讀取 .enzonic/ci.yml,或 .github/workflows 中受支援的部分。無法執行的步驟,例如 Windows 或 macOS 執行器,以及可重複使用的工作流程,會以清楚的訊息回報,而不會悄悄失敗。

連接一個儲存庫,讓下一次推送開始執行。

也要部署應用程式、代管其資料庫或上傳檔案嗎?