update versions

Signed-off-by: Matthew R. Kasun <mkasun@nusak.ca>
This commit is contained in:
Matthew R. Kasun 2022-03-28 17:26:03 -04:00
parent 173916a4b3
commit 52a14877ff
2 changed files with 7 additions and 1 deletions

View file

@ -36,16 +36,18 @@ func Ping(client mqtt.Client, msg mqtt.Message) {
logger.Log(0, record)
return
}
_, decryptErr := decryptMsg(&node, msg.Payload())
version, decryptErr := decryptMsg(&node, msg.Payload())
if decryptErr != nil {
logger.Log(0, "error decrypting when updating node ", node.ID, decryptErr.Error())
return
}
node.SetLastCheckIn()
node.Version = string(version)
if err := logic.UpdateNode(&node, &node); err != nil {
logger.Log(0, "error updating node", node.Name, node.ID, " on checkin", err.Error())
return
}
logger.Log(3, "ping processed for node", node.ID)
// --TODO --set client version once feature is implemented.
//node.SetClientVersion(msg.Payload())

View file

@ -100,6 +100,10 @@ func InitServerNetclient() error {
for _, network := range networks {
var currentServerNode, nodeErr = logic.GetNetworkServerLocal(network.NetID)
if nodeErr == nil {
if currentServerNode.Version != servercfg.Version {
currentServerNode.Version = servercfg.Version
logic.UpdateNode(&currentServerNode, &currentServerNode)
}
if err = logic.ServerPull(&currentServerNode, true); err != nil {
logger.Log(1, "failed pull for network", network.NetID, ", on server node", currentServerNode.ID)
}