mirror of
https://github.com/TeaOSLab/EdgeAdmin.git
synced 2025-11-03 20:40:26 +08:00
53 lines
1.4 KiB
Go
53 lines
1.4 KiB
Go
// Copyright 2023 GoEdge CDN goedge.cdn@gmail.com. All rights reserved. Official site: https://goedge.cn .
|
|
|
|
package clusters
|
|
|
|
import (
|
|
"github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils"
|
|
"github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb"
|
|
"github.com/iwind/TeaGo/types"
|
|
)
|
|
|
|
type CreateNodeAction struct {
|
|
actionutils.ParentAction
|
|
}
|
|
|
|
func (this *CreateNodeAction) Init() {
|
|
this.Nav("", "cluster", "createNode")
|
|
}
|
|
|
|
func (this *CreateNodeAction) RunGet(params struct{}) {
|
|
// 集群总数
|
|
totalClustersResp, err := this.RPC().NodeClusterRPC().CountAllEnabledNodeClusters(this.AdminContext(), &pb.CountAllEnabledNodeClustersRequest{})
|
|
if err != nil {
|
|
this.ErrorPage(err)
|
|
return
|
|
}
|
|
this.Data["totalNodeClusters"] = totalClustersResp.Count
|
|
|
|
// 节点总数
|
|
totalNodesResp, err := this.RPC().NodeRPC().CountAllEnabledNodes(this.AdminContext(), &pb.CountAllEnabledNodesRequest{})
|
|
if err != nil {
|
|
this.ErrorPage(err)
|
|
return
|
|
}
|
|
this.Data["totalNodes"] = totalNodesResp.Count
|
|
|
|
// 如果只有一个默认集群,那么直接跳转到集群
|
|
clustersResp, err := this.RPC().NodeClusterRPC().ListEnabledNodeClusters(this.AdminContext(), &pb.ListEnabledNodeClustersRequest{
|
|
Offset: 0,
|
|
Size: 2,
|
|
Keyword: "",
|
|
})
|
|
if err != nil {
|
|
this.ErrorPage(err)
|
|
return
|
|
}
|
|
if len(clustersResp.NodeClusters) == 1 {
|
|
this.RedirectURL("/clusters/cluster/createNode?clusterId=" + types.String(clustersResp.NodeClusters[0].Id))
|
|
return
|
|
}
|
|
|
|
this.Show()
|
|
}
|