Remove RequestMapUpdates function
This commit is contained in:
parent
6fa0903a8e
commit
bb80b679bc
4 changed files with 5 additions and 75 deletions
15
machine.go
15
machine.go
|
@ -353,13 +353,12 @@ func (h *Headscale) DeleteMachine(machine *Machine) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
machine.Registered = false
|
machine.Registered = false
|
||||||
namespaceID := machine.NamespaceID
|
|
||||||
h.db.Save(&machine) // we mark it as unregistered, just in case
|
h.db.Save(&machine) // we mark it as unregistered, just in case
|
||||||
if err := h.db.Delete(&machine).Error; err != nil {
|
if err := h.db.Delete(&machine).Error; err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
return h.RequestMapUpdates(namespaceID)
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (h *Headscale) TouchMachine(machine *Machine) error {
|
func (h *Headscale) TouchMachine(machine *Machine) error {
|
||||||
|
@ -377,12 +376,11 @@ func (h *Headscale) HardDeleteMachine(machine *Machine) error {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
namespaceID := machine.NamespaceID
|
|
||||||
if err := h.db.Unscoped().Delete(&machine).Error; err != nil {
|
if err := h.db.Unscoped().Delete(&machine).Error; err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
return h.RequestMapUpdates(namespaceID)
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetHostInfo returns a Hostinfo struct for the machine.
|
// GetHostInfo returns a Hostinfo struct for the machine.
|
||||||
|
@ -530,7 +528,9 @@ func (machine Machine) toNode(
|
||||||
addrs = append(addrs, ip)
|
addrs = append(addrs, ip)
|
||||||
}
|
}
|
||||||
|
|
||||||
allowedIPs := append([]netaddr.IPPrefix{}, addrs...) // we append the node own IP, as it is required by the clients
|
allowedIPs := append(
|
||||||
|
[]netaddr.IPPrefix{},
|
||||||
|
addrs...) // we append the node own IP, as it is required by the clients
|
||||||
|
|
||||||
if includeRoutes {
|
if includeRoutes {
|
||||||
routesStr := []string{}
|
routesStr := []string{}
|
||||||
|
@ -862,11 +862,6 @@ func (h *Headscale) EnableRoutes(machine *Machine, routeStrs ...string) error {
|
||||||
machine.EnabledRoutes = datatypes.JSON(routes)
|
machine.EnabledRoutes = datatypes.JSON(routes)
|
||||||
h.db.Save(&machine)
|
h.db.Save(&machine)
|
||||||
|
|
||||||
err = h.RequestMapUpdates(machine.NamespaceID)
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,7 @@
|
||||||
package headscale
|
package headscale
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
|
||||||
"strconv"
|
"strconv"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
|
@ -104,11 +102,6 @@ func (h *Headscale) RenameNamespace(oldName, newName string) error {
|
||||||
return result.Error
|
return result.Error
|
||||||
}
|
}
|
||||||
|
|
||||||
err = h.RequestMapUpdates(oldNamespace.ID)
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -187,54 +180,6 @@ func (h *Headscale) SetMachineNamespace(machine *Machine, namespaceName string)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO(kradalby): Remove the need for this.
|
|
||||||
// RequestMapUpdates signals the KV worker to update the maps for this namespace.
|
|
||||||
func (h *Headscale) RequestMapUpdates(namespaceID uint) error {
|
|
||||||
namespace := Namespace{}
|
|
||||||
if err := h.db.First(&namespace, namespaceID).Error; err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
namespacesPendingUpdates, err := h.getValue("namespaces_pending_updates")
|
|
||||||
if err != nil || namespacesPendingUpdates == "" {
|
|
||||||
err = h.setValue(
|
|
||||||
"namespaces_pending_updates",
|
|
||||||
fmt.Sprintf(`["%s"]`, namespace.Name),
|
|
||||||
)
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
names := []string{}
|
|
||||||
err = json.Unmarshal([]byte(namespacesPendingUpdates), &names)
|
|
||||||
if err != nil {
|
|
||||||
err = h.setValue(
|
|
||||||
"namespaces_pending_updates",
|
|
||||||
fmt.Sprintf(`["%s"]`, namespace.Name),
|
|
||||||
)
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
names = append(names, namespace.Name)
|
|
||||||
data, err := json.Marshal(names)
|
|
||||||
if err != nil {
|
|
||||||
log.Error().
|
|
||||||
Str("func", "RequestMapUpdates").
|
|
||||||
Err(err).
|
|
||||||
Msg("Could not marshal namespaces_pending_updates")
|
|
||||||
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return h.setValue("namespaces_pending_updates", string(data))
|
|
||||||
}
|
|
||||||
|
|
||||||
func (n *Namespace) toUser() *tailcfg.User {
|
func (n *Namespace) toUser() *tailcfg.User {
|
||||||
user := tailcfg.User{
|
user := tailcfg.User{
|
||||||
ID: tailcfg.UserID(n.ID),
|
ID: tailcfg.UserID(n.ID),
|
||||||
|
|
|
@ -143,10 +143,5 @@ func (h *Headscale) EnableNodeRoute(
|
||||||
machine.EnabledRoutes = datatypes.JSON(routes)
|
machine.EnabledRoutes = datatypes.JSON(routes)
|
||||||
h.db.Save(&machine)
|
h.db.Save(&machine)
|
||||||
|
|
||||||
err = h.RequestMapUpdates(machine.NamespaceID)
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
|
@ -67,11 +67,6 @@ func (h *Headscale) RemoveSharedMachineFromNamespace(
|
||||||
return errMachineNotShared
|
return errMachineNotShared
|
||||||
}
|
}
|
||||||
|
|
||||||
err := h.RequestMapUpdates(namespace.ID)
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue