mirror of
https://github.com/goreleaser/goreleaser.git
synced 2025-03-25 21:29:14 +02:00
fix: artifact filter should check if default when builder is zig
It shouldn't happen, but this makes it a bit safer.
This commit is contained in:
parent
e6dc91cf05
commit
898c62c690
@ -20,6 +20,7 @@ import (
|
||||
"sync"
|
||||
|
||||
"github.com/caarlos0/log"
|
||||
"github.com/goreleaser/goreleaser/v2/internal/experimental"
|
||||
"golang.org/x/crypto/blake2b"
|
||||
"golang.org/x/crypto/blake2s"
|
||||
"golang.org/x/crypto/sha3"
|
||||
@ -470,7 +471,7 @@ func ByGoarm(s string) Filter {
|
||||
return func(a *Artifact) bool {
|
||||
switch ExtraOr(*a, ExtraBuilder, "") {
|
||||
case "zig":
|
||||
return true
|
||||
return s == experimental.DefaultGOARM()
|
||||
default:
|
||||
return a.Goarm == s
|
||||
}
|
||||
@ -482,7 +483,7 @@ func ByGoamd64(s string) Filter {
|
||||
return func(a *Artifact) bool {
|
||||
switch ExtraOr(*a, ExtraBuilder, "") {
|
||||
case "zig":
|
||||
return true
|
||||
return s == "v1"
|
||||
default:
|
||||
return a.Goamd64 == s
|
||||
}
|
||||
|
@ -60,6 +60,9 @@ func TestAdd(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestFilter(t *testing.T) {
|
||||
zig := map[string]any{
|
||||
ExtraBuilder: "zig",
|
||||
}
|
||||
data := []*Artifact{
|
||||
{
|
||||
Name: "foo",
|
||||
@ -71,6 +74,11 @@ func TestFilter(t *testing.T) {
|
||||
Goarch: "amd64",
|
||||
Goamd64: "v1",
|
||||
},
|
||||
{
|
||||
Name: "bar",
|
||||
Goarch: "amd64",
|
||||
Extra: zig,
|
||||
},
|
||||
{
|
||||
Name: "bar",
|
||||
Goarch: "amd64",
|
||||
@ -87,8 +95,14 @@ func TestFilter(t *testing.T) {
|
||||
Goamd64: "v4",
|
||||
},
|
||||
{
|
||||
Name: "foobar",
|
||||
Goarm: "6",
|
||||
Name: "foobar",
|
||||
Goarch: "arm",
|
||||
Goarm: "6",
|
||||
},
|
||||
{
|
||||
Name: "foobar",
|
||||
Goarch: "arm",
|
||||
Extra: zig,
|
||||
},
|
||||
{
|
||||
Name: "check",
|
||||
@ -123,24 +137,24 @@ func TestFilter(t *testing.T) {
|
||||
require.Len(t, artifacts.Filter(ByGoos("linux")).items, 1)
|
||||
require.Len(t, artifacts.Filter(ByGoos("darwin")).items, 2)
|
||||
|
||||
require.Len(t, artifacts.Filter(ByGoarch("amd64")).items, 4)
|
||||
require.Len(t, artifacts.Filter(ByGoarch("amd64")).items, 5)
|
||||
require.Empty(t, artifacts.Filter(ByGoarch("386")).items)
|
||||
|
||||
require.Len(t, artifacts.Filter(ByGoamd64("v1")).items, 1)
|
||||
require.Len(t, artifacts.Filter(And(ByGoarch("amd64"), ByGoamd64("v1"))).items, 2)
|
||||
require.Len(t, artifacts.Filter(ByGoamd64("v2")).items, 1)
|
||||
require.Len(t, artifacts.Filter(ByGoamd64("v3")).items, 1)
|
||||
require.Len(t, artifacts.Filter(ByGoamd64("v4")).items, 1)
|
||||
|
||||
require.Len(t, artifacts.Filter(ByGoarm("6")).items, 1)
|
||||
require.Len(t, artifacts.Filter(And(ByGoarch("arm"), ByGoarm("6"))).items, 2)
|
||||
require.Empty(t, artifacts.Filter(ByGoarm("7")).items)
|
||||
|
||||
require.Len(t, artifacts.Filter(ByType(Checksum)).items, 2)
|
||||
require.Empty(t, artifacts.Filter(ByType(Binary)).items)
|
||||
|
||||
require.Len(t, artifacts.Filter(OnlyReplacingUnibins).items, 9)
|
||||
require.Len(t, artifacts.Filter(OnlyReplacingUnibins).items, 11)
|
||||
require.Len(t, artifacts.Filter(And(OnlyReplacingUnibins, ByGoos("darwin"))).items, 1)
|
||||
|
||||
require.Len(t, artifacts.Filter(nil).items, 10)
|
||||
require.Len(t, artifacts.Filter(nil).items, 12)
|
||||
|
||||
require.Len(t, artifacts.Filter(
|
||||
And(
|
||||
|
Loading…
x
Reference in New Issue
Block a user