|
@@ -204,15 +204,6 @@ func updateNodes() {
|
|
|
logic.UpsertNode(&node)
|
|
|
}
|
|
|
if node.IsIngressGateway {
|
|
|
- tagID := models.TagID(fmt.Sprintf("%s.%s", node.Network,
|
|
|
- models.RemoteAccessTagName))
|
|
|
- if node.Tags == nil {
|
|
|
- node.Tags = make(map[models.TagID]struct{})
|
|
|
- }
|
|
|
- if _, ok := node.Tags[tagID]; !ok {
|
|
|
- node.Tags[tagID] = struct{}{}
|
|
|
- logic.UpsertNode(&node)
|
|
|
- }
|
|
|
host, err := logic.GetHost(node.HostID.String())
|
|
|
if err == nil {
|
|
|
go logic.DeleteRole(models.GetRAGRoleID(node.Network, host.ID.String()), true)
|
|
@@ -448,7 +439,8 @@ func createDefaultTagsAndPolicies() {
|
|
|
for _, network := range networks {
|
|
|
logic.CreateDefaultTags(models.NetworkID(network.NetID))
|
|
|
logic.CreateDefaultAclNetworkPolicies(models.NetworkID(network.NetID))
|
|
|
-
|
|
|
+ // delete old remote access gws policy
|
|
|
+ logic.DeleteAcl(models.Acl{ID: fmt.Sprintf("%s.%s", network.NetID, "all-remote-access-gws")})
|
|
|
}
|
|
|
logic.MigrateAclPolicies()
|
|
|
}
|
|
@@ -463,7 +455,37 @@ func migrateToGws() {
|
|
|
node.IsGw = true
|
|
|
node.IsIngressGateway = true
|
|
|
node.IsRelay = true
|
|
|
+ if node.Tags == nil {
|
|
|
+ node.Tags = make(map[models.TagID]struct{})
|
|
|
+ }
|
|
|
+ node.Tags[models.TagID(fmt.Sprintf("%s.%s", node.Network, models.GwTagName))] = struct{}{}
|
|
|
+ delete(node.Tags, models.TagID(fmt.Sprintf("%s.%s", node.Network, models.OldRemoteAccessTagName)))
|
|
|
logic.UpsertNode(&node)
|
|
|
}
|
|
|
}
|
|
|
+ acls := logic.ListAcls()
|
|
|
+ for _, acl := range acls {
|
|
|
+ upsert := false
|
|
|
+ for i, srcI := range acl.Src {
|
|
|
+ if srcI.ID == models.NodeTagID && srcI.Value == fmt.Sprintf("%s.%s", acl.NetworkID.String(), models.OldRemoteAccessTagName) {
|
|
|
+ srcI.Value = models.GwTagName
|
|
|
+ acl.Src[i] = srcI
|
|
|
+ upsert = true
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for i, dstI := range acl.Dst {
|
|
|
+ if dstI.ID == models.NodeTagID && dstI.Value == fmt.Sprintf("%s.%s", acl.NetworkID.String(), models.OldRemoteAccessTagName) {
|
|
|
+ dstI.Value = models.GwTagName
|
|
|
+ acl.Dst[i] = dstI
|
|
|
+ upsert = true
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if upsert {
|
|
|
+ logic.UpsertAcl(acl)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ nets, _ := logic.GetNetworks()
|
|
|
+ for _, netI := range nets {
|
|
|
+ logic.DeleteTag(models.TagID(fmt.Sprintf("%s.%s", netI.NetID, models.OldRemoteAccessTagName)), true)
|
|
|
+ }
|
|
|
}
|