Skip to content

Commit

Permalink
fix: make scoop write .json when --skip-publish (#2380)
Browse files Browse the repository at this point in the history
* fix: make scoop write .json when --skip-publish

Don't skip the pipeline altogether but write
out the manifest.json file as the homebrew
pipeline does, only skip committing to the repo.

closes #2374

* Update internal/pipe/scoop/scoop_test.go

Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
  • Loading branch information
jonaslu and caarlos0 committed Aug 3, 2021
1 parent 18695c2 commit 7f0edf6
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 7 deletions.
4 changes: 0 additions & 4 deletions internal/pipe/scoop/scoop.go
Expand Up @@ -34,10 +34,6 @@ func (Pipe) String() string {

// Publish scoop manifest.
func (Pipe) Publish(ctx *context.Context) error {
if ctx.SkipPublish {
return pipe.ErrSkipPublishEnabled
}

client, err := client.New(ctx)
if err != nil {
return err
Expand Down
30 changes: 27 additions & 3 deletions internal/pipe/scoop/scoop_test.go
Expand Up @@ -997,8 +997,7 @@ func Test_buildManifest(t *testing.T) {
}
}

func TestRunPipeScoopWithSkip(t *testing.T) {
folder := t.TempDir()
func getScoopPipeSkipCtx(folder string) (*context.Context, string) {
ctx := &context.Context{
Git: context.GitInfo{
CurrentTag: "v1.0.1",
Expand All @@ -1022,11 +1021,12 @@ func TestRunPipeScoopWithSkip(t *testing.T) {
Description: "A run pipe test formula",
Homepage: "https://github.com/goreleaser",
Name: "run-pipe",
SkipUpload: "true",
},
},
}

path := filepath.Join(folder, "bin.tar.gz")

ctx.Artifacts.Add(&artifact.Artifact{
Name: "bin.tar.gz",
Path: path,
Expand All @@ -1039,6 +1039,14 @@ func TestRunPipeScoopWithSkip(t *testing.T) {
},
})

return ctx, path
}

func TestRunPipeScoopWithSkipUpload(t *testing.T) {
folder := t.TempDir()
ctx, path := getScoopPipeSkipCtx(folder)
ctx.Config.Scoop.SkipUpload = "true"

f, err := os.Create(path)
require.NoError(t, err)
require.NoError(t, f.Close())
Expand All @@ -1051,6 +1059,22 @@ func TestRunPipeScoopWithSkip(t *testing.T) {
require.NoError(t, err, "file should exist: "+distFile)
}

func TestRunPipeScoopWithSkipPublish(t *testing.T) {
folder := t.TempDir()
ctx, path := getScoopPipeSkipCtx(folder)
ctx.SkipPublish = true

f, err := os.Create(path)
require.NoError(t, err)
require.NoError(t, f.Close())

cli := &DummyClient{}
require.EqualError(t, doRun(ctx, cli), pipe.ErrSkipPublishEnabled.Error())

distFile := filepath.Join(folder, ctx.Config.Scoop.Name+".json")
require.FileExists(t, distFile)
}

func TestWrapInDirectory(t *testing.T) {
folder := t.TempDir()
file := filepath.Join(folder, "archive")
Expand Down

1 comment on commit 7f0edf6

@vercel
Copy link

@vercel vercel bot commented on 7f0edf6 Aug 3, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.