fix: 删除操作清理远端资源并拦截悬空引用
CI / Backend (go vet + test) (push) Canceled after 0s
CI / Frontend (lint + build + test) (push) Canceled after 0s

- 部署删除: k8s 模式清理 StatefulSet/Service/ConfigMap 与 PVC,先卸载关联采集器
- 采集器删除: 同步卸载成功后再删记录,失败保留避免孤儿
- 集群/存储/主机删除: 有部署或采集器引用时拒绝,避免悬空外键
- Token RBAC 补 services/proxy,保证 cluster-svc 数据源可查询
This commit is contained in:
logan committed 2026-10-30 01:17:26 +08:00
1 parent 56e1245b70
commit b433b5f9dd
7 files changed
+91 -20

No files matched your search

+5
View File
@@ -151,6 +151,11 @@ func (s *StorageService) Delete(id uint) error {
defer db.Unlock()
for i, st := range db.Storages {
if st.ID == id {
for _, d := range db.Deployments {
if d.StorageConfigID == id {
return fmt.Errorf("仍有部署使用该存储配置,请先删除部署或改用其他存储")
}
}
db.Storages = append(db.Storages[:i], db.Storages[i+1:]...)
db.RequestSave()
return nil