feat(server): 支持稀疏检出路径并完善部署执行队列

- 在部署DTO中添加sparseCheckoutPaths字段支持稀疏检出路径
- 数据模型Deployment新增稀疏检出路径字段及相关数据库映射
- 部署创建时支持设置稀疏检出路径字段
- 部署重试接口实现,支持复制原始部署记录并加入执行队列
- 新增流水线模板初始化与基于模板创建流水线接口
- 优化应用初始化流程,确保执行队列和流水线模板正确加载
- 添加启动日志,提示执行队列初始化完成
This commit is contained in:
2025-12-12 23:21:26 +08:00
parent 73240d94b1
commit 9897bd04c2
22 changed files with 1307 additions and 136 deletions

View File

@@ -1,13 +1,32 @@
import Koa from 'koa';
import { initMiddlewares } from './middlewares/index.ts';
import { log } from './libs/logger.ts';
import { ExecutionQueue } from './libs/execution-queue.ts';
import { initializePipelineTemplates } from './libs/pipeline-template.ts';
const app = new Koa();
// 初始化应用
async function initializeApp() {
// 初始化流水线模板
await initializePipelineTemplates();
initMiddlewares(app);
// 初始化执行队列
const executionQueue = ExecutionQueue.getInstance();
await executionQueue.initialize();
const PORT = process.env.PORT || 3001;
const app = new Koa();
app.listen(PORT, () => {
log.info('APP', 'Server started at port %d', PORT);
initMiddlewares(app);
const PORT = process.env.PORT || 3001;
app.listen(PORT, () => {
log.info('APP', 'Server started at port %d', PORT);
log.info('QUEUE', 'Execution queue initialized');
});
}
// 启动应用
initializeApp().catch(error => {
console.error('Failed to start application:', error);
process.exit(1);
});