added egress action

This commit is contained in:
worker-9 2021-08-06 13:39:14 -04:00
parent bed63c1e15
commit 94cf8bfbc6
4 changed files with 11 additions and 12 deletions

View file

@ -232,7 +232,7 @@ func keyUpdate(w http.ResponseWriter, r *http.Request) {
}
func KeyUpdate(netname string) (models.Network, error) {
err := functions.NetworkNodesUpdateKey(netname)
err := functions.NetworkNodesUpdateAction(netname, models.NODE_UPDATE_KEY)
if err != nil {
return models.Network{}, err
}

View file

@ -555,13 +555,13 @@ func CreateEgressGateway(gateway models.EgressGatewayRequest) (models.Node, erro
if err != nil {
return node, err
}
err = database.Insert(key, string(nodeData), database.NODES_TABLE_NAME)
// prepare update model.
if err != nil {
if err = database.Insert(key, string(nodeData), database.NODES_TABLE_NAME); err != nil {
return models.Node{}, err
}
err = SetNetworkNodesLastModified(gateway.NetID)
return node, err
if err = functions.NetworkNodesUpdateAction(node.Network, models.NODE_EGRESS_CHANGE); err != nil {
return models.Node{}, err
}
return node, nil
}
func ValidateEgressGateway(gateway models.EgressGatewayRequest) error {
@ -614,12 +614,10 @@ func DeleteEgressGateway(network, macaddress string) (models.Node, error) {
if err != nil {
return models.Node{}, err
}
err = database.Insert(key, string(data), database.NODES_TABLE_NAME)
if err != nil {
if err = database.Insert(key, string(data), database.NODES_TABLE_NAME); err != nil {
return models.Node{}, err
}
err = SetNetworkNodesLastModified(network)
if err != nil {
if err = functions.NetworkNodesUpdateAction(network, models.NODE_EGRESS_CHANGE); err != nil {
return models.Node{}, err
}
return node, nil

View file

@ -235,7 +235,7 @@ func UpdateNetworkNodeAddresses(networkName string) error {
return nil
}
func NetworkNodesUpdateKey(networkName string) error {
func NetworkNodesUpdateAction(networkName string, action string) error {
collections, err := database.FetchRecords(database.NODES_TABLE_NAME)
if err != nil {
@ -253,7 +253,7 @@ func NetworkNodesUpdateKey(networkName string) error {
return err
}
if node.Network == networkName {
node.Action = models.NODE_UPDATE_KEY
node.Action = action
data, err := json.Marshal(&node)
if err != nil {
return err

View file

@ -20,6 +20,7 @@ const TEN_YEARS_IN_SECONDS = 300000000
const NODE_UPDATE_KEY = "updatekey"
const NODE_DELETE = "delete"
const NODE_IS_PENDING = "pending"
const NODE_EGRESS_CHANGE = "egresschange"
const NODE_NOOP = "noop"
var seededRand *rand.Rand = rand.New(