mirror of
https://github.com/gravitl/netmaker.git
synced 2025-10-05 08:47:35 +08:00
hub and spoke logic
This commit is contained in:
@@ -40,8 +40,22 @@ func ServerJoin(networkSettings *models.Network) (models.Node, error) {
|
||||
serverCount = len(currentServers) + 1
|
||||
}
|
||||
var ishub = "no"
|
||||
if serverCount == 1 && (networkSettings.IsHubAndSpoke == "yes" || networkSettings.IsComms == "yes") {
|
||||
ishub = "yes"
|
||||
|
||||
if networkSettings.IsHubAndSpoke == "yes" || networkSettings.IsComms == "yes" {
|
||||
nodes, err := GetNetworkNodes(networkSettings.NetID)
|
||||
if err != nil || nodes == nil {
|
||||
ishub = "yes"
|
||||
} else {
|
||||
sethub := true
|
||||
for i := range nodes {
|
||||
if nodes[i].IsHub == "yes" {
|
||||
sethub = false
|
||||
}
|
||||
}
|
||||
if sethub {
|
||||
ishub = "yes"
|
||||
}
|
||||
}
|
||||
}
|
||||
var node = &models.Node{
|
||||
IsServer: "yes",
|
||||
|
Reference in New Issue
Block a user