From 53071b66423e57a2186de30a4ee3e3b72212c4d5 Mon Sep 17 00:00:00 2001 From: Carlos Alexandro Becker Date: Fri, 3 Nov 2023 23:30:48 +0000 Subject: [PATCH] feat: --skip=aur --- internal/pipe/aur/aur.go | 9 ++++++--- internal/pipe/aur/aur_test.go | 10 +++++++++- internal/skips/skips.go | 2 ++ 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/internal/pipe/aur/aur.go b/internal/pipe/aur/aur.go index 0dfeb62d1be..151431f710e 100644 --- a/internal/pipe/aur/aur.go +++ b/internal/pipe/aur/aur.go @@ -16,6 +16,7 @@ import ( "github.com/goreleaser/goreleaser/internal/client" "github.com/goreleaser/goreleaser/internal/commitauthor" "github.com/goreleaser/goreleaser/internal/pipe" + "github.com/goreleaser/goreleaser/internal/skips" "github.com/goreleaser/goreleaser/internal/tmpl" "github.com/goreleaser/goreleaser/pkg/config" "github.com/goreleaser/goreleaser/pkg/context" @@ -31,9 +32,11 @@ var ErrNoArchivesFound = errors.New("no linux archives found") // Pipe for arch linux's AUR pkgbuild. type Pipe struct{} -func (Pipe) String() string { return "arch user repositories" } -func (Pipe) ContinueOnError() bool { return true } -func (Pipe) Skip(ctx *context.Context) bool { return len(ctx.Config.AURs) == 0 } +func (Pipe) String() string { return "arch user repositories" } +func (Pipe) ContinueOnError() bool { return true } +func (Pipe) Skip(ctx *context.Context) bool { + return skips.Any(ctx, skips.AUR) || len(ctx.Config.AURs) == 0 +} func (Pipe) Default(ctx *context.Context) error { for i := range ctx.Config.AURs { diff --git a/internal/pipe/aur/aur_test.go b/internal/pipe/aur/aur_test.go index bff5e39ad11..3e735817fcf 100644 --- a/internal/pipe/aur/aur_test.go +++ b/internal/pipe/aur/aur_test.go @@ -10,6 +10,7 @@ import ( "github.com/goreleaser/goreleaser/internal/client" "github.com/goreleaser/goreleaser/internal/git" "github.com/goreleaser/goreleaser/internal/golden" + "github.com/goreleaser/goreleaser/internal/skips" "github.com/goreleaser/goreleaser/internal/testctx" "github.com/goreleaser/goreleaser/internal/testlib" "github.com/goreleaser/goreleaser/pkg/config" @@ -698,7 +699,14 @@ func TestSkip(t *testing.T) { t.Run("skip", func(t *testing.T) { require.True(t, Pipe{}.Skip(testctx.New())) }) - + t.Run("skip flag", func(t *testing.T) { + ctx := testctx.NewWithCfg(config.Project{ + AURs: []config.AUR{ + {}, + }, + }, testctx.Skip(skips.AUR)) + require.False(t, Pipe{}.Skip(ctx)) + }) t.Run("dont skip", func(t *testing.T) { ctx := testctx.NewWithCfg(config.Project{ AURs: []config.AUR{ diff --git a/internal/skips/skips.go b/internal/skips/skips.go index 6d3b91dc084..2dedaab596c 100644 --- a/internal/skips/skips.go +++ b/internal/skips/skips.go @@ -26,6 +26,7 @@ const ( Winget Key = "winget" Snapcraft Key = "snapcraft" Scoop Key = "scoop" + AUR Key = "aur" ) func String(ctx *context.Context) string { @@ -103,6 +104,7 @@ var Release = Keys{ Winget, Snapcraft, Scoop, + AUR, Before, }