mirror of
https://github.com/gravitl/netmaker.git
synced 2025-09-27 21:22:36 +08:00
added egress action
This commit is contained in:
@@ -232,7 +232,7 @@ func keyUpdate(w http.ResponseWriter, r *http.Request) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func KeyUpdate(netname string) (models.Network, error) {
|
func KeyUpdate(netname string) (models.Network, error) {
|
||||||
err := functions.NetworkNodesUpdateKey(netname)
|
err := functions.NetworkNodesUpdateAction(netname, models.NODE_UPDATE_KEY)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return models.Network{}, err
|
return models.Network{}, err
|
||||||
}
|
}
|
||||||
|
@@ -555,13 +555,13 @@ func CreateEgressGateway(gateway models.EgressGatewayRequest) (models.Node, erro
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return node, err
|
return node, err
|
||||||
}
|
}
|
||||||
err = database.Insert(key, string(nodeData), database.NODES_TABLE_NAME)
|
if err = database.Insert(key, string(nodeData), database.NODES_TABLE_NAME); err != nil {
|
||||||
// prepare update model.
|
|
||||||
if err != nil {
|
|
||||||
return models.Node{}, err
|
return models.Node{}, err
|
||||||
}
|
}
|
||||||
err = SetNetworkNodesLastModified(gateway.NetID)
|
if err = functions.NetworkNodesUpdateAction(node.Network, models.NODE_EGRESS_CHANGE); err != nil {
|
||||||
return node, err
|
return models.Node{}, err
|
||||||
|
}
|
||||||
|
return node, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func ValidateEgressGateway(gateway models.EgressGatewayRequest) error {
|
func ValidateEgressGateway(gateway models.EgressGatewayRequest) error {
|
||||||
@@ -614,12 +614,10 @@ func DeleteEgressGateway(network, macaddress string) (models.Node, error) {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return models.Node{}, err
|
return models.Node{}, err
|
||||||
}
|
}
|
||||||
err = database.Insert(key, string(data), database.NODES_TABLE_NAME)
|
if err = database.Insert(key, string(data), database.NODES_TABLE_NAME); err != nil {
|
||||||
if err != nil {
|
|
||||||
return models.Node{}, err
|
return models.Node{}, err
|
||||||
}
|
}
|
||||||
err = SetNetworkNodesLastModified(network)
|
if err = functions.NetworkNodesUpdateAction(network, models.NODE_EGRESS_CHANGE); err != nil {
|
||||||
if err != nil {
|
|
||||||
return models.Node{}, err
|
return models.Node{}, err
|
||||||
}
|
}
|
||||||
return node, nil
|
return node, nil
|
||||||
|
@@ -235,7 +235,7 @@ func UpdateNetworkNodeAddresses(networkName string) error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func NetworkNodesUpdateKey(networkName string) error {
|
func NetworkNodesUpdateAction(networkName string, action string) error {
|
||||||
|
|
||||||
collections, err := database.FetchRecords(database.NODES_TABLE_NAME)
|
collections, err := database.FetchRecords(database.NODES_TABLE_NAME)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -253,7 +253,7 @@ func NetworkNodesUpdateKey(networkName string) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
if node.Network == networkName {
|
if node.Network == networkName {
|
||||||
node.Action = models.NODE_UPDATE_KEY
|
node.Action = action
|
||||||
data, err := json.Marshal(&node)
|
data, err := json.Marshal(&node)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
@@ -20,6 +20,7 @@ const TEN_YEARS_IN_SECONDS = 300000000
|
|||||||
const NODE_UPDATE_KEY = "updatekey"
|
const NODE_UPDATE_KEY = "updatekey"
|
||||||
const NODE_DELETE = "delete"
|
const NODE_DELETE = "delete"
|
||||||
const NODE_IS_PENDING = "pending"
|
const NODE_IS_PENDING = "pending"
|
||||||
|
const NODE_EGRESS_CHANGE = "egresschange"
|
||||||
const NODE_NOOP = "noop"
|
const NODE_NOOP = "noop"
|
||||||
|
|
||||||
var seededRand *rand.Rand = rand.New(
|
var seededRand *rand.Rand = rand.New(
|
||||||
|
Reference in New Issue
Block a user