1
0
mirror of https://github.com/goreleaser/goreleaser.git synced 2025-11-06 09:09:29 +02:00

refactor: improve archive pipe (#3100)

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
This commit is contained in:
Carlos Alexandro Becker
2022-05-11 21:54:28 -03:00
committed by GitHub
parent 17e4d62791
commit 5d9110ab43
4 changed files with 46 additions and 26 deletions

View File

@@ -164,8 +164,11 @@ func doCreate(ctx *context.Context, arch config.Archive, binaries []*artifact.Ar
if err != nil {
return err
}
a := NewEnhancedArchive(archive.New(archiveFile), wrap)
a, err := archive.New(archiveFile, format)
if err != nil {
return err
}
a = NewEnhancedArchive(a, wrap)
defer a.Close()
files, err := findFiles(template, arch.Files)

View File

@@ -901,8 +901,9 @@ func TestDuplicateFilesInsideArchive(t *testing.T) {
ff, err := os.CreateTemp(folder, "")
require.NoError(t, err)
require.NoError(t, ff.Close())
a := NewEnhancedArchive(archive.New(f), "")
a, err := archive.New(f, "tar.gz")
require.NoError(t, err)
a = NewEnhancedArchive(a, "")
t.Cleanup(func() {
require.NoError(t, a.Close())
})
@@ -1156,3 +1157,18 @@ func TestArchive_globbing(t *testing.T) {
})
})
}
func TestInvalidFormat(t *testing.T) {
ctx := context.New(config.Project{
Dist: t.TempDir(),
Archives: []config.Archive{
{
ID: "foo",
NameTemplate: "foo",
Meta: true,
Format: "7z",
},
},
})
require.EqualError(t, Pipe{}.Run(ctx), "invalid archive format: 7z")
}