mirror of
				https://github.com/gravitl/netmaker.git
				synced 2025-10-31 12:16:29 +08:00 
			
		
		
		
	NET-1956: Async Node Status API (#3341)
* add node status api * upsate node status api to return map data * resolve merge conflicts
This commit is contained in:
		| @@ -443,7 +443,7 @@ func AddStaticNodestoList(nodes []models.Node) []models.Node { | ||||
| 	return nodes | ||||
| } | ||||
|  | ||||
| func AddStatusToNodes(nodes []models.Node) (nodesWithStatus []models.Node) { | ||||
| func AddStatusToNodes(nodes []models.Node, statusCall bool) (nodesWithStatus []models.Node) { | ||||
| 	aclDefaultPolicyStatusMap := make(map[string]bool) | ||||
| 	for _, node := range nodes { | ||||
| 		if _, ok := aclDefaultPolicyStatusMap[node.Network]; !ok { | ||||
| @@ -451,7 +451,12 @@ func AddStatusToNodes(nodes []models.Node) (nodesWithStatus []models.Node) { | ||||
| 			defaultPolicy, _ := GetDefaultPolicy(models.NetworkID(node.Network), models.DevicePolicy) | ||||
| 			aclDefaultPolicyStatusMap[node.Network] = defaultPolicy.Enabled | ||||
| 		} | ||||
| 		GetNodeStatus(&node, aclDefaultPolicyStatusMap[node.Network]) | ||||
| 		if statusCall { | ||||
| 			GetNodeStatus(&node, aclDefaultPolicyStatusMap[node.Network]) | ||||
| 		} else { | ||||
| 			GetNodeCheckInStatus(&node, true) | ||||
| 		} | ||||
|  | ||||
| 		nodesWithStatus = append(nodesWithStatus, node) | ||||
| 	} | ||||
| 	return | ||||
| @@ -572,6 +577,16 @@ func GetAllNodesAPI(nodes []models.Node) []models.ApiNode { | ||||
| 	return apiNodes[:] | ||||
| } | ||||
|  | ||||
| // GetNodesStatusAPI - gets nodes status | ||||
| func GetNodesStatusAPI(nodes []models.Node) map[string]models.ApiNodeStatus { | ||||
| 	apiStatusNodesMap := make(map[string]models.ApiNodeStatus) | ||||
| 	for i := range nodes { | ||||
| 		newApiNode := nodes[i].ConvertToStatusNode() | ||||
| 		apiStatusNodesMap[newApiNode.ID] = *newApiNode | ||||
| 	} | ||||
| 	return apiStatusNodesMap | ||||
| } | ||||
|  | ||||
| // DeleteExpiredNodes - goroutine which deletes nodes which are expired | ||||
| func DeleteExpiredNodes(ctx context.Context, peerUpdate chan *models.Node) { | ||||
| 	// Delete Expired Nodes Every Hour | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Abhishek K
					Abhishek K