mirror of
https://github.com/acepanel/panel.git
synced 2026-02-04 06:47:20 +08:00
feat: 添加磁盘管理工具到工具箱 (#1195)
* Initial plan * 实现磁盘管理工具的后端和前端基础功能 Co-authored-by: devhaozi <115467771+devhaozi@users.noreply.github.com> * 完成磁盘管理工具功能实现并验证构建成功 Co-authored-by: devhaozi <115467771+devhaozi@users.noreply.github.com> * 添加输入验证防止命令注入攻击 Co-authored-by: devhaozi <115467771+devhaozi@users.noreply.github.com> * 移除命令注入验证并修复评审意见 Co-authored-by: devhaozi <115467771+devhaozi@users.noreply.github.com> * feat: merge main * feat: merge main * feat: 分区优化 * feat: fstab管理 --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: devhaozi <115467771+devhaozi@users.noreply.github.com> Co-authored-by: 耗子 <haozi@loli.email>
This commit is contained in:
@@ -49,6 +49,7 @@ type Http struct {
|
||||
toolboxSystem *service.ToolboxSystemService
|
||||
toolboxBenchmark *service.ToolboxBenchmarkService
|
||||
toolboxSSH *service.ToolboxSSHService
|
||||
toolboxDisk *service.ToolboxDiskService
|
||||
webhook *service.WebHookService
|
||||
apps *apploader.Loader
|
||||
}
|
||||
@@ -87,6 +88,7 @@ func NewHttp(
|
||||
toolboxSystem *service.ToolboxSystemService,
|
||||
toolboxBenchmark *service.ToolboxBenchmarkService,
|
||||
toolboxSSH *service.ToolboxSSHService,
|
||||
toolboxDisk *service.ToolboxDiskService,
|
||||
webhook *service.WebHookService,
|
||||
apps *apploader.Loader,
|
||||
) *Http {
|
||||
@@ -124,6 +126,7 @@ func NewHttp(
|
||||
toolboxSystem: toolboxSystem,
|
||||
toolboxBenchmark: toolboxBenchmark,
|
||||
toolboxSSH: toolboxSSH,
|
||||
toolboxDisk: toolboxDisk,
|
||||
webhook: webhook,
|
||||
apps: apps,
|
||||
}
|
||||
@@ -463,6 +466,25 @@ func (route *Http) Register(r *chi.Mux) {
|
||||
r.Post("/root_key", route.toolboxSSH.GenerateRootKey)
|
||||
})
|
||||
|
||||
r.Route("/toolbox_disk", func(r chi.Router) {
|
||||
r.Get("/list", route.toolboxDisk.List)
|
||||
r.Post("/partitions", route.toolboxDisk.GetPartitions)
|
||||
r.Post("/mount", route.toolboxDisk.Mount)
|
||||
r.Post("/umount", route.toolboxDisk.Umount)
|
||||
r.Post("/format", route.toolboxDisk.Format)
|
||||
r.Post("/init", route.toolboxDisk.Init)
|
||||
r.Get("/fstab", route.toolboxDisk.GetFstab)
|
||||
r.Delete("/fstab", route.toolboxDisk.DeleteFstab)
|
||||
r.Get("/lvm", route.toolboxDisk.GetLVMInfo)
|
||||
r.Post("/lvm/pv", route.toolboxDisk.CreatePV)
|
||||
r.Delete("/lvm/pv", route.toolboxDisk.RemovePV)
|
||||
r.Post("/lvm/vg", route.toolboxDisk.CreateVG)
|
||||
r.Delete("/lvm/vg", route.toolboxDisk.RemoveVG)
|
||||
r.Post("/lvm/lv", route.toolboxDisk.CreateLV)
|
||||
r.Delete("/lvm/lv", route.toolboxDisk.RemoveLV)
|
||||
r.Post("/lvm/lv/extend", route.toolboxDisk.ExtendLV)
|
||||
})
|
||||
|
||||
r.Route("/webhook", func(r chi.Router) {
|
||||
r.Get("/", route.webhook.List)
|
||||
r.Post("/", route.webhook.Create)
|
||||
|
||||
Reference in New Issue
Block a user