X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=cmd%2Fsafcm%2Fconfig%2Fgroups.go;h=466e493c401ea895062294304b0961c5f360ce2d;hb=77f373a4aa590711155e3af0b768997781f81559;hp=571f19b7fcb10b5adcd4c5e406d6f22e5b585730;hpb=e452996e2008d438aa68dedbd206525f507b73d3;p=safcm%2Fsafcm.git diff --git a/cmd/safcm/config/groups.go b/cmd/safcm/config/groups.go index 571f19b..466e493 100644 --- a/cmd/safcm/config/groups.go +++ b/cmd/safcm/config/groups.go @@ -131,7 +131,7 @@ func LoadGroups(cfg *Config, hosts *Hosts) (map[string][]string, error) { func ResolveHostGroups(host string, groups map[string][]string, detectedGroups []string) ([]string, error) { - const maxDepth = 100 + const maxRecursionDepth = 100 detectedGroupsMap := make(map[string]bool) for _, x := range detectedGroups { @@ -143,7 +143,7 @@ func ResolveHostGroups(host string, groups map[string][]string, // groups). var lookup func(string, int) bool lookup = func(group string, depth int) bool { - if depth > maxDepth { + if depth > maxRecursionDepth { cycle = &group return false } @@ -193,7 +193,7 @@ func ResolveHostGroups(host string, groups map[string][]string, // TransitivelyDetectedGroups returns all groups which depend on "detected" // groups, either directly or by depending on groups which transitively depend // on "detected" groups. -func TransitivelyDetectedGroups(groups map[string][]string) []string { +func TransitivelyDetectedGroups(groups map[string][]string) map[string]bool { work := make(map[string][]string) for k, v := range groups { work[k] = v @@ -220,11 +220,5 @@ func TransitivelyDetectedGroups(groups map[string][]string) []string { break } } - - var res []string - for x := range detected { - res = append(res, x) - } - sort.Strings(res) - return res + return detected }