From 312fd85338c26a44d330ed07f318d0640a11dcbb Mon Sep 17 00:00:00 2001 From: Carlos Alexandro Becker Date: Thu, 18 May 2023 01:24:50 +0000 Subject: [PATCH] fix: improve goarch to pkg conversion also added tests refs https://github.com/goreleaser/goreleaser/issues/3998 --- apk/apk.go | 9 +-------- arch/arch.go | 7 ------- deb/deb.go | 2 +- deb/deb_test.go | 6 ++++++ rpm/rpm.go | 4 ++-- rpm/rpm_test.go | 6 ++++++ 6 files changed, 16 insertions(+), 18 deletions(-) diff --git a/apk/apk.go b/apk/apk.go index 6bc5a9d..e285a6f 100644 --- a/apk/apk.go +++ b/apk/apk.go @@ -61,9 +61,9 @@ func init() { var archToAlpine = map[string]string{ "386": "x86", "amd64": "x86_64", + "arm64": "aarch64", "arm6": "armhf", "arm7": "armv7", - "arm64": "aarch64", "ppc64le": "ppc64le", "s390": "s390x", } @@ -73,13 +73,6 @@ func ensureValidArch(info *nfpm.Info) *nfpm.Info { info.Arch = info.APK.Arch } else if arch, ok := archToAlpine[info.Arch]; ok { info.Arch = arch - } else { - for k, v := range archToAlpine { - if strings.HasPrefix(info.Arch, k) { - info.Arch = v - break - } - } } return info diff --git a/arch/arch.go b/arch/arch.go index f804d8b..f717b48 100644 --- a/arch/arch.go +++ b/arch/arch.go @@ -53,13 +53,6 @@ func ensureValidArch(info *nfpm.Info) *nfpm.Info { info.Arch = info.ArchLinux.Arch } else if arch, ok := archToArchLinux[info.Arch]; ok { info.Arch = arch - } else { - for k, v := range archToArchLinux { - if strings.HasPrefix(info.Arch, k) { - info.Arch = v - break - } - } } return info diff --git a/deb/deb.go b/deb/deb.go index 264c93d..a8ac208 100644 --- a/deb/deb.go +++ b/deb/deb.go @@ -39,8 +39,8 @@ var archToDebian = map[string]string{ "arm5": "armel", "arm6": "armhf", "arm7": "armhf", - "mipsle": "mipsel", "mips64le": "mips64el", + "mipsle": "mipsel", "ppc64le": "ppc64el", "s390": "s390x", } diff --git a/deb/deb_test.go b/deb/deb_test.go index 63974e7..ac5f937 100644 --- a/deb/deb_test.go +++ b/deb/deb_test.go @@ -1376,6 +1376,12 @@ func TestArches(t *testing.T) { info = ensureValidArch(info) require.Equal(t, archToDebian[k], info.Arch) }) + t.Run("mips64lesoftfloat", func(t *testing.T) { + info := exampleInfo() + info.Arch = "mips64le" + info = ensureValidArch(info) + require.Equal(t, "mips64el", info.Arch) + }) } t.Run("override", func(t *testing.T) { diff --git a/rpm/rpm.go b/rpm/rpm.go index 919444e..fc1da8d 100644 --- a/rpm/rpm.go +++ b/rpm/rpm.go @@ -64,9 +64,9 @@ var archToRPM = map[string]string{ "arm5": "armv5tel", "arm6": "armv6hl", "arm7": "armv7hl", - "mips": "mips", + "mips64le": "mips64el", "mipsle": "mipsel", - "mipsle64": "mips64el", + "mips": "mips", // TODO: other arches } diff --git a/rpm/rpm_test.go b/rpm/rpm_test.go index 84e803a..3f3fa6b 100644 --- a/rpm/rpm_test.go +++ b/rpm/rpm_test.go @@ -504,6 +504,12 @@ func TestArches(t *testing.T) { info = ensureValidArch(info) require.Equal(t, archToRPM[k], info.Arch) }) + t.Run("mips64lesoftfloat", func(t *testing.T) { + info := exampleInfo() + info.Arch = "mips64lesoftfloat" + info = ensureValidArch(info) + require.Equal(t, "mips64el", info.Arch) + }) } t.Run("override", func(t *testing.T) {