auto-deploy-demo/.trae/specs/nginx-dynamic-routing/tasks.md

56 lines
2.5 KiB
Markdown
Raw Normal View History

# Tasks
- [x] Task 1: 创建Nginx配置模板系统
- [x] SubTask 1.1: 创建 `server/templates/nginx/main.conf.tpl` 主配置模板
- [x] SubTask 1.2: 创建 `server/templates/nginx/location.conf.tpl` location配置模板
- [x] SubTask 1.3: 确保模板支持变量替换和SPA路由
- [x] Task 2: 实现Nginx配置管理服务
- [x] SubTask 2.1: 创建 `server/services/nginxManager.js` 服务模块
- [x] SubTask 2.2: 实现配置模板渲染功能
- [x] SubTask 2.3: 实现Nginx配置文件读写功能
- [x] SubTask 2.4: 实现Nginx配置验证功能nginx -t
- [x] SubTask 2.5: 实现Nginx重载功能nginx -s reload
- [x] SubTask 2.6: 实现配置回滚机制
- [x] Task 3: 扩展环境配置
- [x] SubTask 3.1: 在 `server/config/index.js` 添加Nginx相关配置项
- [x] SubTask 3.2: 更新 `.env.example` 添加新配置项说明
- [ ] SubTask 3.3: 实现Nginx可用性检测功能
- [x] Task 4: 修改进程管理服务
- [x] SubTask 4.1: 修改 `processManager.js` 使项目绑定到127.0.0.1
- [x] SubTask 4.2: 修改端口分配逻辑,支持内部端口模式
- [x] SubTask 4.3: 添加Nginx配置更新集成点
- [x] Task 5: 修改项目服务
- [x] SubTask 5.1: 修改 `projectService.js` 的URL生成逻辑
- [x] SubTask 5.2: 在项目创建时生成Nginx location配置
- [x] SubTask 5.3: 在项目删除时清理Nginx配置
- [x] SubTask 5.4: 在项目启动/停止时更新Nginx upstream状态
- [x] Task 6: 修改部署路由
- [x] SubTask 6.1: 修改 `routes/deploy.js` 集成Nginx配置更新
- [x] SubTask 6.2: 添加Nginx配置状态查询接口
- [x] Task 7: 实现本地开发模式兼容
- [x] SubTask 7.1: 实现Nginx环境检测逻辑
- [x] SubTask 7.2: 实现模式自动切换Nginx模式/多端口模式)
- [x] SubTask 7.3: 添加模式状态日志输出
- [x] Task 8: 更新前端适配
- [x] SubTask 8.1: 确认前端正确显示新的URL格式
- [x] SubTask 8.2: 添加Nginx模式状态显示可选
# Task Dependencies
- [Task 2] depends on [Task 1] - Nginx管理服务依赖模板系统
- [Task 4] depends on [Task 2] - 进程管理修改依赖Nginx管理服务
- [Task 5] depends on [Task 2] - 项目服务修改依赖Nginx管理服务
- [Task 6] depends on [Task 4, Task 5] - 路由修改依赖服务和进程管理
- [Task 7] depends on [Task 3] - 本地模式依赖配置扩展
- [Task 8] depends on [Task 5, Task 6] - 前端适配依赖后端完成
# Parallelizable Work
- Task 1 和 Task 3 可以并行执行
- Task 4 和 Task 5 可以在Task 2完成后并行执行