X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=cmd%2Fsafcm%2Fsync_sync.go;h=930a263998566c3a71563b30c1e374f6ada06ecb;hb=45f6c93c3d7ef4a300707bb96d4a1e1fce6df55f;hp=1328af7ca7acf6d87073c12cc8b71d36ca489e44;hpb=1934f1ab83306dff45310d5b45e2a99c97e28c35;p=safcm%2Fsafcm.git diff --git a/cmd/safcm/sync_sync.go b/cmd/safcm/sync_sync.go index 1328af7..930a263 100644 --- a/cmd/safcm/sync_sync.go +++ b/cmd/safcm/sync_sync.go @@ -19,6 +19,7 @@ package main import ( "fmt" + "math" "os" "path/filepath" "sort" @@ -65,8 +66,8 @@ func (s *Sync) hostSyncReq(detectedGroups []string) ( return empty, err } { - // Don't leak internal group order which is confusing without - // knowing the implementation details. + // Don't leak internal group priority which is confusing + // without knowing the implementation details. groupsSorted := make([]string, len(groups)) copy(groupsSorted, groups) sort.Strings(groupsSorted) @@ -84,7 +85,7 @@ func (s *Sync) hostSyncReq(detectedGroups []string) ( b := priorities[j] return groupPriority[a] < groupPriority[b] }) - s.logVerbosef("host group priorities (desc. order): %v", + s.logVerbosef("host group priorities (desc. priority): %v", strings.Join(priorities, " ")) } @@ -187,11 +188,11 @@ func (s *Sync) resolveHostGroups(detectedGroups []string) ( // Early entries have higher priorities groupPriority := make(map[string]int) - for i, x := range s.config.GroupOrder { - groupPriority[x] = i + 1 + for i, x := range s.config.GroupPriority { + groupPriority[x] = math.MinInt32 + i + 1 } // Host itself always has highest priority - groupPriority[s.host.Name] = -1 + groupPriority[s.host.Name] = math.MinInt32 // Sort groups after priority and name sort.Slice(groups, func(i, j int) bool { @@ -241,7 +242,7 @@ func (s *Sync) checkFileConflict(group string, path string, file *safcm.File, } return fmt.Errorf("groups %s and %s both provide file %q\n"+ - "Use 'group_order' in config.yaml to declare preference", + "Use 'group_priority' in config.yaml to declare preference", group, old.OrigGroup, path) } @@ -256,9 +257,9 @@ func resolveFileDirConflicts(files map[string]*safcm.File) { const sep = string(filepath.Separator) - // Remove invalid paths which can result from group_order overriding - // paths from another group (e.g. "/foo" as file from one group and - // "/foo/bar" from another). + // Remove invalid paths which can result from group_priority + // overriding paths from another group (e.g. "/foo" as file from one + // group and "/foo/bar" from another). var last *safcm.File for _, x := range paths { file := files[x]