pkg/archive: sort files

sort changes found and exported.

Sorting the files before appending them to the tar archive
would mean a dependable ordering for types like hardlinks.

Also, combine sort logic used

Signed-off-by: Vincent Batts <vbatts@redhat.com>
This commit is contained in:
Vincent Batts 2015-02-05 11:48:58 +01:00
parent 193aa34569
commit c059e6d158
3 changed files with 12 additions and 9 deletions

View file

@ -25,13 +25,6 @@ func copyDir(src, dst string) error {
return nil
}
// Helper to sort []Change by path
type byPath struct{ changes []Change }
func (b byPath) Less(i, j int) bool { return b.changes[i].Path < b.changes[j].Path }
func (b byPath) Len() int { return len(b.changes) }
func (b byPath) Swap(i, j int) { b.changes[i], b.changes[j] = b.changes[j], b.changes[i] }
type FileType uint32
const (
@ -220,7 +213,7 @@ func TestChangesDirsMutated(t *testing.T) {
t.Fatal(err)
}
sort.Sort(byPath{changes})
sort.Sort(changesByPath(changes))
expectedChanges := []Change{
{"/dir1", ChangeDelete},