2
0
abhishek9686 11 сар өмнө
parent
commit
2ea707fb5c

+ 1 - 0
controllers/network.go

@@ -533,6 +533,7 @@ func createNetwork(w http.ResponseWriter, r *http.Request) {
 	}
 	}
 	logic.CreateDefaultNetworkRolesAndGroups(models.NetworkID(network.NetID))
 	logic.CreateDefaultNetworkRolesAndGroups(models.NetworkID(network.NetID))
 	logic.CreateDefaultAclNetworkPolicies(models.NetworkID(network.NetID))
 	logic.CreateDefaultAclNetworkPolicies(models.NetworkID(network.NetID))
+	logic.CreateDefaultTags(models.NetworkID(network.NetID))
 	//add new network to allocated ip map
 	//add new network to allocated ip map
 	go logic.AddNetworkToAllocatedIpMap(network.NetID)
 	go logic.AddNetworkToAllocatedIpMap(network.NetID)
 
 

+ 22 - 0
logic/tags.go

@@ -7,9 +7,11 @@ import (
 	"regexp"
 	"regexp"
 	"sort"
 	"sort"
 	"sync"
 	"sync"
+	"time"
 
 
 	"github.com/gravitl/netmaker/database"
 	"github.com/gravitl/netmaker/database"
 	"github.com/gravitl/netmaker/models"
 	"github.com/gravitl/netmaker/models"
+	"golang.org/x/exp/slog"
 )
 )
 
 
 var tagMutex = &sync.RWMutex{}
 var tagMutex = &sync.RWMutex{}
@@ -205,3 +207,23 @@ func CheckIDSyntax(id string) error {
 	}
 	}
 	return nil
 	return nil
 }
 }
+
+func CreateDefaultTags(netID models.NetworkID) {
+	// create tag for remote access gws in the network
+	tag := models.Tag{
+		ID:        models.TagID(fmt.Sprintf("%s.%s", netID.String(), "remote-access-gws")),
+		TagName:   "remote-access-gws",
+		Network:   netID,
+		CreatedBy: "auto",
+		CreatedAt: time.Now(),
+	}
+	_, err := GetTag(tag.ID)
+	if err == nil {
+		return
+	}
+	err = InsertTag(tag)
+	if err != nil {
+		slog.Error("failed to create remote access gw tag", "error", err.Error())
+		return
+	}
+}

+ 11 - 0
migrate/migrate.go

@@ -26,6 +26,7 @@ func Run() {
 	updateHosts()
 	updateHosts()
 	updateNodes()
 	updateNodes()
 	updateAcls()
 	updateAcls()
+	createDefaultTags()
 }
 }
 
 
 func assignSuperAdmin() {
 func assignSuperAdmin() {
@@ -433,3 +434,13 @@ func syncUsers() {
 		}
 		}
 	}
 	}
 }
 }
+
+func createDefaultTags() {
+	networks, err := logic.GetNetworks()
+	if err != nil {
+		return
+	}
+	for _, network := range networks {
+		logic.CreateDefaultTags(models.NetworkID(network.NetID))
+	}
+}