mirror of
https://github.com/gravitl/netmaker.git
synced 2025-09-06 05:04:27 +08:00
Fixed nil err in isempty record 2
This commit is contained in:
parent
34b61f8e79
commit
736bcc3e55
2 changed files with 23 additions and 2 deletions
|
@ -354,8 +354,8 @@ func deleteNetwork(w http.ResponseWriter, r *http.Request) {
|
|||
}
|
||||
|
||||
func DeleteNetwork(network string) error {
|
||||
_, err := database.FetchRecords(database.NODES_TABLE_NAME)
|
||||
if database.IsEmptyRecord(err) {
|
||||
nodeCount, err := functions.GetNetworkNodeCount(network)
|
||||
if nodeCount == 0 || database.IsEmptyRecord(err) {
|
||||
return database.DeleteRecord(database.NETWORKS_TABLE_NAME, network)
|
||||
}
|
||||
return errors.New("node check failed. All nodes must be deleted before deleting network")
|
||||
|
|
|
@ -323,6 +323,27 @@ func IsMacAddressUnique(macaddress string, networkName string) (bool, error) {
|
|||
return true, nil
|
||||
}
|
||||
|
||||
func GetNetworkNodeCount(networkName string) (int, error) {
|
||||
|
||||
collection, err := database.FetchRecords(database.NODES_TABLE_NAME)
|
||||
count := 0
|
||||
if err != nil && !database.IsEmptyRecord(err) {
|
||||
return count, err
|
||||
}
|
||||
for _, value := range collection {
|
||||
var node models.Node
|
||||
if err = json.Unmarshal([]byte(value), &node); err != nil {
|
||||
return count, err
|
||||
} else {
|
||||
if node.Network == networkName {
|
||||
count++
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return count, nil
|
||||
}
|
||||
|
||||
//Checks to see if access key is valid
|
||||
//Does so by checking against all keys and seeing if any have the same value
|
||||
//may want to hash values before comparing...consider this
|
||||
|
|
Loading…
Add table
Reference in a new issue