1.1 KiB
1.1 KiB
系统架构
1. 概览
MiniCI 采用典型的 Monorepo 架构,前端 React 配合后端 Koa,数据持久化使用 SQLite。
2. 核心模块
2.1 后端 (apps/server)
- Route System: 基于 TC39 装饰器的自动扫描路由。
- Execution Queue: 单例模式的执行队列,控制并发并支持任务持久化恢复。
- Pipeline Runner: 核心执行逻辑,利用
zx在独立的工作目录下运行 Shell 脚本。 - Data Access: Prisma ORM 提供类型安全的数据访问。
2.2 前端 (apps/web)
- Build Tool: Rsbuild (基于 Rspack),提供极速的开发体验。
- UI Framework: React 19 + Arco Design。
- State Management: Zustand 实现轻量级全局状态。
3. 部署流 (Pipeline Flow)
- 用户触发部署 -> 创建
Deployment记录 (Status: pending)。 ExecutionQueue捕获新任务 -> 实例化PipelineRunner。GitManager准备工作目录 (git clone或git pull)。PipelineRunner逐个执行Step脚本。- 执行过程中实时更新
Deployment.buildLog。 - 完成后更新状态为
success或failed。