X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=cmd%2Fsafcm%2Fsync_sync_test.go;h=f0e7524e8186a6d803c6d8e5ac326e95f722a93e;hb=a583eff808817656f8ddb81ddfca3c1fd1f6c85f;hp=31252936e663861f18aa352766ab43479540caae;hpb=b731ef4979de9e533ce9bb35110ab2b769e2eed4;p=safcm%2Fsafcm.git diff --git a/cmd/safcm/sync_sync_test.go b/cmd/safcm/sync_sync_test.go index 3125293..f0e7524 100644 --- a/cmd/safcm/sync_sync_test.go +++ b/cmd/safcm/sync_sync_test.go @@ -59,6 +59,7 @@ func TestHostSyncReq(t *testing.T) { Groups: []string{ "all", "group", + "group3", "remove", "host1.example.org", }, @@ -135,14 +136,20 @@ func TestHostSyncReq(t *testing.T) { Services: []string{ "unbound", }, - Commands: []string{ - "echo command one", - "echo -n command two", + Commands: []*safcm.Command{ + { + OrigGroup: "group", + Cmd: "echo command one", + }, + { + OrigGroup: "group", + Cmd: "echo -n command two", + }, }, }, []string{ - "host1.example.org: 3 host groups: all group host1.example.org remove", - "host1.example.org: 3 host group priorities (desc. order): host1.example.org", + "host1.example.org: 3 host groups: all group group3 host1.example.org remove", + "host1.example.org: 3 host group priorities (descending): host1.example.org", }, nil, }, @@ -157,6 +164,7 @@ func TestHostSyncReq(t *testing.T) { Groups: []string{ "all", "group", + "group3", "remove", "host1.example.org", }, @@ -233,9 +241,15 @@ func TestHostSyncReq(t *testing.T) { Services: []string{ "unbound", }, - Commands: []string{ - "echo command one", - "echo -n command two", + Commands: []*safcm.Command{ + { + OrigGroup: "group", + Cmd: "echo command one", + }, + { + OrigGroup: "group", + Cmd: "echo -n command two", + }, }, }, nil, @@ -251,9 +265,9 @@ func TestHostSyncReq(t *testing.T) { safcm.MsgSyncReq{}, []string{ "host1.example.org: 3 host groups: all dns host1.example.org", - "host1.example.org: 3 host group priorities (desc. order): host1.example.org", + "host1.example.org: 3 host group priorities (descending): host1.example.org", }, - fmt.Errorf("groups dns and all both provide file \"/etc/resolv.conf\"\nUse 'group_order' in config.yaml to declare preference"), + fmt.Errorf("groups dns and all both provide file \"/etc/resolv.conf\"\nUse 'group_priority' in config.yaml to declare preference"), }, { "conflict: file from detected group", @@ -266,9 +280,9 @@ func TestHostSyncReq(t *testing.T) { safcm.MsgSyncReq{}, []string{ "host2.example.org: 3 host groups: all detected_other host2.example.org other", - "host2.example.org: 3 host group priorities (desc. order): host2.example.org", + "host2.example.org: 3 host group priorities (descending): host2.example.org", }, - fmt.Errorf("groups other and all both provide file \"/etc/resolv.conf\"\nUse 'group_order' in config.yaml to declare preference"), + fmt.Errorf("groups other and all both provide file \"/etc/resolv.conf\"\nUse 'group_priority' in config.yaml to declare preference"), }, { @@ -280,9 +294,9 @@ func TestHostSyncReq(t *testing.T) { safcm.MsgSyncReq{}, []string{ "host1.example.org: 3 host groups: all dns host1.example.org", - "host1.example.org: 3 host group priorities (desc. order): host1.example.org", + "host1.example.org: 3 host group priorities (descending): host1.example.org", }, - fmt.Errorf("groups dns and all both provide file \"/etc\"\nUse 'group_order' in config.yaml to declare preference"), + fmt.Errorf("groups dns and all both provide file \"/etc\"\nUse 'group_priority' in config.yaml to declare preference"), }, { "conflict: dir from detected group", @@ -295,9 +309,9 @@ func TestHostSyncReq(t *testing.T) { safcm.MsgSyncReq{}, []string{ "host2.example.org: 3 host groups: all detected_other host2.example.org other", - "host2.example.org: 3 host group priorities (desc. order): host2.example.org", + "host2.example.org: 3 host group priorities (descending): host2.example.org", }, - fmt.Errorf("groups other and all both provide file \"/etc\"\nUse 'group_order' in config.yaml to declare preference"), + fmt.Errorf("groups other and all both provide file \"/etc\"\nUse 'group_priority' in config.yaml to declare preference"), }, { @@ -312,8 +326,8 @@ func TestHostSyncReq(t *testing.T) { }, { - "group_order", - "project-group_order", + "group_priority", + "project-group_priority", "host1.example.org", nil, safcm.LogDebug3, @@ -408,12 +422,45 @@ func TestHostSyncReq(t *testing.T) { }, []string{ "host1.example.org: 3 host groups: all group-a group-b host1.example.org", - "host1.example.org: 3 host group priorities (desc. order): host1.example.org group-a group-b all", + "host1.example.org: 3 host group priorities (descending): host1.example.org group-a group-b all", `host1.example.org: 4 files: "/etc": group group-a overwrites triggers from group group-b`, `host1.example.org: 4 files: "/etc": group host1.example.org overwrites triggers from group group-a`, }, nil, }, + + { + "group_priority (single group)", + "project-group_priority-single", + "host1.example.org", + nil, + safcm.LogDebug3, + safcm.MsgSyncReq{ + Groups: []string{"all", "group-b", "group-a", "host1.example.org"}, + Files: map[string]*safcm.File{ + "/": { + Path: "/", + Mode: fs.ModeDir | 0755, + Uid: -1, + Gid: -1, + OrigGroup: "group-a", + }, + "/file.txt": { + Path: "/file.txt", + Mode: 0644, + Uid: -1, + Gid: -1, + Data: []byte("file.txt: from group-a\n"), + OrigGroup: "group-a", + }, + }, + }, + []string{ + "host1.example.org: 3 host groups: all group-a group-b host1.example.org", + "host1.example.org: 3 host group priorities (descending): host1.example.org group-a", + }, + nil, + }, } for _, tc := range tests {