mirror of
https://github.com/gravitl/netmaker.git
synced 2026-04-22 16:07:11 +08:00
fix(go): remove tags from nameservers;
This commit is contained in:
@@ -288,6 +288,7 @@ func deleteTag(w http.ResponseWriter, r *http.Request) {
|
||||
go func() {
|
||||
proLogic.RemoveDeviceTagFromAclPolicies(tag.ID, tag.Network)
|
||||
proLogic.RemoveTagFromPostureChecks(tag.ID, tag.Network)
|
||||
proLogic.RemoveTagFromNameservers(tag.ID, tag.Network)
|
||||
logic.RemoveTagFromEnrollmentKeys(tag.ID)
|
||||
mq.PublishPeerUpdate(false)
|
||||
}()
|
||||
|
||||
@@ -242,3 +242,23 @@ func GetNameserversForHost(h *schema.Host) (returnNsLi []models.Nameserver) {
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func RemoveTagFromNameservers(tagID models.TagID, netID schema.NetworkID) error {
|
||||
nameservers, err := (&schema.Nameserver{
|
||||
NetworkID: netID.String(),
|
||||
}).ListByNetwork(db.WithContext(context.TODO()))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
var multiErr error
|
||||
for _, nameserver := range nameservers {
|
||||
delete(nameserver.Tags, tagID.String())
|
||||
err := nameserver.Update(db.WithContext(context.TODO()))
|
||||
if err != nil {
|
||||
multiErr = errors.Join(multiErr, err)
|
||||
}
|
||||
}
|
||||
|
||||
return multiErr
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user