mirror of
https://github.com/gravitl/netmaker.git
synced 2025-09-10 15:14:22 +08:00
Merge pull request #673 from gravitl/bugfix_v0.10.0_update_keys
Bugfix v0.10.0 update keys
This commit is contained in:
commit
3248717585
2 changed files with 24 additions and 0 deletions
|
@ -3,6 +3,7 @@ package controller
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"errors"
|
"errors"
|
||||||
|
"fmt"
|
||||||
"net/http"
|
"net/http"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
|
@ -11,6 +12,7 @@ import (
|
||||||
"github.com/gravitl/netmaker/logger"
|
"github.com/gravitl/netmaker/logger"
|
||||||
"github.com/gravitl/netmaker/logic"
|
"github.com/gravitl/netmaker/logic"
|
||||||
"github.com/gravitl/netmaker/models"
|
"github.com/gravitl/netmaker/models"
|
||||||
|
"github.com/gravitl/netmaker/mq"
|
||||||
"github.com/gravitl/netmaker/servercfg"
|
"github.com/gravitl/netmaker/servercfg"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -98,6 +100,23 @@ func keyUpdate(w http.ResponseWriter, r *http.Request) {
|
||||||
logger.Log(2, r.Header.Get("user"), "updated key on network", netname)
|
logger.Log(2, r.Header.Get("user"), "updated key on network", netname)
|
||||||
w.WriteHeader(http.StatusOK)
|
w.WriteHeader(http.StatusOK)
|
||||||
json.NewEncoder(w).Encode(network)
|
json.NewEncoder(w).Encode(network)
|
||||||
|
nodes, err := logic.GetNetworkNodes(netname)
|
||||||
|
if err != nil {
|
||||||
|
logger.Log(2, "failed to retrieve network nodes for network", netname, err.Error())
|
||||||
|
return
|
||||||
|
}
|
||||||
|
for _, node := range nodes {
|
||||||
|
fmt.Println("updating node ", node.Name, " for a key update")
|
||||||
|
if err := mq.NodeUpdate(&node); err != nil {
|
||||||
|
logger.Log(2, "failed key update ", node.Name)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
node, err := logic.GetNetworkServerLeader(netname)
|
||||||
|
if err != nil {
|
||||||
|
logger.Log(2, "failed to get server node")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
runUpdates(&node, false)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Update a network
|
// Update a network
|
||||||
|
|
|
@ -2,6 +2,7 @@ package controller
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"net/http"
|
"net/http"
|
||||||
"strings"
|
"strings"
|
||||||
|
@ -608,6 +609,10 @@ func deleteNode(w http.ResponseWriter, r *http.Request) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func runUpdates(node *models.Node, nodeUpdate bool) error {
|
func runUpdates(node *models.Node, nodeUpdate bool) error {
|
||||||
|
//don't publish to server node
|
||||||
|
if node.IsServer == "yes" {
|
||||||
|
return errors.New("attempt to publish to server node")
|
||||||
|
}
|
||||||
if nodeUpdate {
|
if nodeUpdate {
|
||||||
if err := mq.NodeUpdate(node); err != nil {
|
if err := mq.NodeUpdate(node); err != nil {
|
||||||
logger.Log(1, "error publishing node update", err.Error())
|
logger.Log(1, "error publishing node update", err.Error())
|
||||||
|
|
Loading…
Add table
Reference in a new issue