docs: 更新开发日志 — 记录脚本库 ScriptManager 全栈CRUD
This commit is contained in:
1 parent
242389a1de
commit
8be63ac168
1 file changed
+41
@@ -503,3 +503,44 @@ cd ~/devops/aiops
|
||||
- 定时任务创建对话框增加目标服务器选择(当前仅本地执行)
|
||||
- 脚本编辑器增加在线编辑+保存功能(当前新建对话框无独立编辑入口)
|
||||
- CabinetView 仍使用 mock 数据(但未在 App.tsx 路由中使用,低优先级)
|
||||
|
||||
## 2026-06-15 00:10 自动推进
|
||||
|
||||
- **任务**: 脚本库全栈 CRUD 管理器(ScriptManager)— 替换占位 AutomationManager,为 `/scripts` 路由补齐完整新建/编辑/查看/复制/删除/执行能力(自动化运维三大模块 CronJob/Script/Ansible 最后一个补全真实 CRUD)
|
||||
- **修改**:
|
||||
- `frontend/src/components/automation/ScriptManager.tsx`(新建,656 行):
|
||||
- 两 tab 布局:脚本库(卡片网格)+ 执行记录(表格)
|
||||
- 脚本库卡片:名称/类型徽章/描述/内容预览(3行)/执行次数·版本/超时 + 5 操作按钮(查看内容/执行/编辑/复制/删除)
|
||||
- 搜索(名称·编码·描述)+ 类型筛选(全部/Shell/Python/PowerShell/YAML)
|
||||
- 新建/编辑复用对话框:名称、类型(切换时自动填充对应模板)、描述、超时、内容编辑器;自动生成唯一 code(`sc-<base36时间戳>-<随机>`)
|
||||
- 查看:终端风格(黑底绿字)ScrollArea 内容展示 + 快捷编辑入口
|
||||
- 执行:ConfirmProvider 确认 → 本地执行 → toast 反馈(成功显示耗时,失败显示输出摘要)
|
||||
- 执行记录 tab:真实 TaskExecution(task_type=script)记录,状态徽章 + 耗时 + 终端风格日志查看器
|
||||
- 4 统计卡片(脚本总数/执行中/今日成功/今日失败)基于真实执行记录
|
||||
- 主题感知(muted-foreground/muted CSS 变量,跟随 5 套主题)
|
||||
- `frontend/src/App.tsx`:
|
||||
- 新增 `import { ScriptManager }`
|
||||
- `/scripts` 路由 `AutomationManager` → `ScriptManager`
|
||||
- 移除 dead `/playbooks` 路由(侧边栏无入口,指向占位组件)
|
||||
- 移除 `AutomationManager` import
|
||||
- 删除 `frontend/src/components/automation/Automation.tsx`(占位显示页,Edit/新建/目标服务器按钮均为非功能性占位,违反「不留占位按钮」偏好)
|
||||
- **结果**:
|
||||
- 前端 `npx tsc --noEmit` 类型检查通过 ✅
|
||||
- 前端 `npm run build` 构建通过 ✅
|
||||
- 后端无改动(Script CRUD + Execute API 早已完整,前端 scriptApi 也已齐备)
|
||||
- API 验证:POST /scripts 创建成功(id=6)✅
|
||||
- API 验证:POST /scripts/:id/execute → status=success, duration=6ms, 真实 stdout 捕获 ✅
|
||||
- API 验证:PUT /scripts/:id → name 更新 + version 自增 2 + timeout 更新 ✅
|
||||
- API 验证:DELETE /scripts/:id → 删除成功 ✅
|
||||
- 浏览器验证:脚本库 5→6 卡片正确展示(含新建的测试脚本)✅
|
||||
- 浏览器验证:新建对话框预填 Shell 模板,填写名称后创建成功(卡片数+1)✅
|
||||
- 浏览器验证:编辑对话框预填数据(重启服务/Shell/重启服务脚本/systemctl restart $1)✅
|
||||
- 浏览器验证:执行确认弹窗 → 确认后执行 → 统计「今日失败」0→1(重启脚本在 macOS 上执行失败,符合预期)✅
|
||||
- 浏览器验证:执行记录 tab 展示 3 条真实记录(#7重启服务-失败/#6测试-成功/#1检查磁盘-成功)+ 状态徽章 + 查看日志按钮 ✅
|
||||
- 浏览器验证:无 console 错误 ✅
|
||||
- git push origin master 成功 (commit 242389a) ✅
|
||||
- **下一步建议**:
|
||||
- 定时任务/脚本执行接入 Agent 远程执行(当前仅 AIOps 主机本地执行,Agent 任务系统已就绪可复用)
|
||||
- K8s 拓扑图增加缩放/拖拽交互
|
||||
- 脚本执行支持参数化(Params 字段已存在于 model,前端尚未接入参数填写)
|
||||
- 定时任务编辑入口(CronJobManager 有新建但 Automation 列表的编辑按钮未接通)
|
||||
Reference in new issue
Block a user