mirror of
https://github.com/gravitl/netmaker.git
synced 2025-02-25 16:44:01 +08:00
WIP commit
This commit is contained in:
parent
84884e5c23
commit
496187985e
3 changed files with 13 additions and 10 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -15,4 +15,6 @@ netclient/netclient32
|
||||||
netclient/netclient.exe
|
netclient/netclient.exe
|
||||||
config/dnsconfig/
|
config/dnsconfig/
|
||||||
data/
|
data/
|
||||||
|
.idea/
|
||||||
.vscode/
|
.vscode/
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
package models
|
package models
|
||||||
|
|
||||||
|
import "golang.zx2c4.com/wireguard/wgctrl/wgtypes"
|
||||||
|
|
||||||
type PeerUpdate struct {
|
type PeerUpdate struct {
|
||||||
Network string
|
Network string
|
||||||
Nodes []Node
|
Peers []wgtypes.Peer
|
||||||
ExtPeers []ExtPeersResponse
|
|
||||||
}
|
}
|
||||||
|
|
||||||
type KeyUpdate struct {
|
type KeyUpdate struct {
|
||||||
|
|
|
@ -100,7 +100,7 @@ var NodeUpdate mqtt.MessageHandler = func(client mqtt.Client, msg mqtt.Message)
|
||||||
//check if interface name has changed if so delete.
|
//check if interface name has changed if so delete.
|
||||||
if cfg.Node.Interface != newNode.Interface {
|
if cfg.Node.Interface != newNode.Interface {
|
||||||
if err = wireguard.RemoveConf(cfg.Node.Interface, true); err != nil {
|
if err = wireguard.RemoveConf(cfg.Node.Interface, true); err != nil {
|
||||||
ncutils.PrintLog("could not delete old interface "+cfg.Node.Interface+": ", err.Error(), 1)
|
ncutils.PrintLog("could not delete old interface "+cfg.Node.Interface+": "+err.Error(), 1)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
newNode.PullChanges = "no"
|
newNode.PullChanges = "no"
|
||||||
|
@ -109,12 +109,12 @@ var NodeUpdate mqtt.MessageHandler = func(client mqtt.Client, msg mqtt.Message)
|
||||||
cfg.Node = newNode
|
cfg.Node = newNode
|
||||||
switch newNode.Action {
|
switch newNode.Action {
|
||||||
case models.NODE_DELETE:
|
case models.NODE_DELETE:
|
||||||
if err := RemoveLocalInstance(cfg, cfg.Network); err != nil {
|
if err := RemoveLocalInstance(&cfg, cfg.Network); err != nil {
|
||||||
ncutils.Printlog("error deleting local instance: "+err.Error(), 1)
|
ncutils.PrintLog("error deleting local instance: "+err.Error(), 1)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
case models.NODE_UPDATE_KEY:
|
case models.NODE_UPDATE_KEY:
|
||||||
UpdateKeys(cfg)
|
UpdateKeys(&cfg, client)
|
||||||
case models.NODE_NOOP:
|
case models.NODE_NOOP:
|
||||||
default:
|
default:
|
||||||
}
|
}
|
||||||
|
@ -123,12 +123,12 @@ var NodeUpdate mqtt.MessageHandler = func(client mqtt.Client, msg mqtt.Message)
|
||||||
ncutils.PrintLog("error updating node configuration: "+err.Error(), 1)
|
ncutils.PrintLog("error updating node configuration: "+err.Error(), 1)
|
||||||
}
|
}
|
||||||
nameserver := cfg.Server.CoreDNSAddr
|
nameserver := cfg.Server.CoreDNSAddr
|
||||||
privateKey, err := wireguard.RetrievePrivKey(data.Network)
|
privateKey, err := wireguard.RetrievePrivKey(newNode.Network)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
ncutils.Log("error reading PrivateKey " + err.Error())
|
ncutils.Log("error reading PrivateKey " + err.Error())
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if err := wireguard.UpdateWgInterface(cfg.Node.Interface, privateKey, nameserver, data); err != nil {
|
if err := wireguard.UpdateWgInterface(cfg.Node.Interface, privateKey, nameserver, newNode); err != nil {
|
||||||
ncutils.Log("error updating wireguard config " + err.Error())
|
ncutils.Log("error updating wireguard config " + err.Error())
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -177,7 +177,7 @@ func UpdateKeys(cfg *config.ClientConfig, client mqtt.Client) (*config.ClientCon
|
||||||
ncutils.Log("error generating privatekey " + err.Error())
|
ncutils.Log("error generating privatekey " + err.Error())
|
||||||
return cfg, err
|
return cfg, err
|
||||||
}
|
}
|
||||||
if err := wireguard.UpdatePrivateKey(data.Interface, key.String()); err != nil {
|
if err := wireguard.UpdatePrivateKey(cfg.Node.Interface, key.String()); err != nil {
|
||||||
ncutils.Log("error updating wireguard key " + err.Error())
|
ncutils.Log("error updating wireguard key " + err.Error())
|
||||||
return cfg, err
|
return cfg, err
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue