mirror of
https://github.com/goreleaser/goreleaser.git
synced 2026-06-19 23:24:39 +02:00
fix: make scoop write .json when --skip-publish (#2380)
* 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>
This commit is contained in:
co-authored by
Carlos Alexandro Becker
parent
18695c2687
commit
7f0edf6fe0
@@ -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
|
||||
|
||||
@@ -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",
|
||||
@@ -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,
|
||||
@@ -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())
|
||||
@@ -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")
|
||||
|
||||
Reference in New Issue
Block a user