删除集群的时候,同时删除对应的域名解析/集群切换二级域名先删除再添加新的域名解析

This commit is contained in:
GoEdgeLab
2022-09-22 14:09:28 +08:00
parent d4a1c86b93
commit ce9bf28274
5 changed files with 84 additions and 22 deletions

View File

@@ -143,18 +143,37 @@ func (this *NodeClusterService) DeleteNodeCluster(ctx context.Context, req *pb.D
return nil, err
}
// 删除集群
err = models.SharedNodeClusterDAO.DisableNodeCluster(tx, req.NodeClusterId)
// 删除现有的DNS相关任务
err = dns.SharedDNSTaskDAO.DeleteDNSTasksWithClusterId(tx, req.NodeClusterId)
if err != nil {
return nil, err
}
// 生成新的删除DNS任务
dnsInfo, err := models.SharedNodeClusterDAO.FindClusterDNSInfo(tx, req.NodeClusterId, nil)
if err != nil {
return nil, err
}
if dnsInfo != nil {
var oldDNSDomainId = int64(dnsInfo.DnsDomainId)
err = dns.SharedDNSTaskDAO.CreateClusterRemoveTask(tx, req.NodeClusterId, oldDNSDomainId, dnsInfo.DnsName)
if err != nil {
return nil, err
}
}
// 删除相关任务
err = models.SharedNodeTaskDAO.DeleteAllClusterTasks(tx, nodeconfigs.NodeRoleNode, req.NodeClusterId)
if err != nil {
return nil, err
}
// 删除集群
err = models.SharedNodeClusterDAO.DisableNodeCluster(tx, req.NodeClusterId)
if err != nil {
return nil, err
}
return this.Success()
}