mirror of
https://github.com/goreleaser/goreleaser.git
synced 2025-03-19 20:57:53 +02:00
refactor(winget): minor improvements (#4157)
improved readability a bit Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
This commit is contained in:
parent
c16ffc40a1
commit
e9760a167b
@ -104,102 +104,89 @@ func (p Pipe) doRun(ctx *context.Context, winget config.Winget, cl client.Releas
|
|||||||
|
|
||||||
tp := tmpl.New(ctx)
|
tp := tmpl.New(ctx)
|
||||||
|
|
||||||
publisher, err := tp.Apply(winget.Publisher)
|
var err error
|
||||||
|
winget.Publisher, err = tp.Apply(winget.Publisher)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
if publisher == "" {
|
if winget.Publisher == "" {
|
||||||
return errNoPublisher
|
return errNoPublisher
|
||||||
}
|
}
|
||||||
winget.Publisher = publisher
|
|
||||||
|
|
||||||
if winget.License == "" {
|
if winget.License == "" {
|
||||||
return errNoLicense
|
return errNoLicense
|
||||||
}
|
}
|
||||||
|
|
||||||
name, err := tp.Apply(winget.Name)
|
winget.Name, err = tp.Apply(winget.Name)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
winget.Name = name
|
|
||||||
|
|
||||||
author, err := tp.Apply(winget.Author)
|
winget.Author, err = tp.Apply(winget.Author)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
winget.Author = author
|
|
||||||
|
|
||||||
publisherURL, err := tp.Apply(winget.PublisherURL)
|
winget.PublisherURL, err = tp.Apply(winget.PublisherURL)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
winget.PublisherURL = publisherURL
|
|
||||||
|
|
||||||
homepage, err := tp.Apply(winget.Homepage)
|
winget.Homepage, err = tp.Apply(winget.Homepage)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
winget.Homepage = homepage
|
|
||||||
|
|
||||||
ref, err := client.TemplateRef(tp.Apply, winget.Repository)
|
winget.Repository, err = client.TemplateRef(tp.Apply, winget.Repository)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
winget.Repository = ref
|
|
||||||
|
|
||||||
skipUpload, err := tp.Apply(winget.SkipUpload)
|
winget.SkipUpload, err = tp.Apply(winget.SkipUpload)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
winget.SkipUpload = skipUpload
|
|
||||||
|
|
||||||
description, err := tp.Apply(winget.Description)
|
winget.Description, err = tp.Apply(winget.Description)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
winget.Description = description
|
|
||||||
|
|
||||||
shortDescription, err := tp.Apply(winget.ShortDescription)
|
winget.ShortDescription, err = tp.Apply(winget.ShortDescription)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
winget.ShortDescription = shortDescription
|
|
||||||
|
|
||||||
if winget.ShortDescription == "" {
|
if winget.ShortDescription == "" {
|
||||||
return errNoShortDescription
|
return errNoShortDescription
|
||||||
}
|
}
|
||||||
|
|
||||||
releaseNotesURL, err := tp.Apply(winget.ReleaseNotesURL)
|
winget.ReleaseNotesURL, err = tp.Apply(winget.ReleaseNotesURL)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
winget.ReleaseNotesURL = releaseNotesURL
|
|
||||||
|
|
||||||
releaseNotes, err := tp.WithExtraFields(tmpl.Fields{
|
winget.ReleaseNotes, err = tp.WithExtraFields(tmpl.Fields{
|
||||||
"Changelog": ctx.ReleaseNotes,
|
"Changelog": ctx.ReleaseNotes,
|
||||||
}).Apply(winget.ReleaseNotes)
|
}).Apply(winget.ReleaseNotes)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
winget.ReleaseNotes = releaseNotes
|
|
||||||
|
|
||||||
if winget.URLTemplate == "" {
|
if winget.URLTemplate == "" {
|
||||||
url, err := cl.ReleaseURLTemplate(ctx)
|
winget.URLTemplate, err = cl.ReleaseURLTemplate(ctx)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
winget.URLTemplate = url
|
|
||||||
}
|
}
|
||||||
|
|
||||||
path, err := tp.Apply(winget.Path)
|
winget.Path, err = tp.Apply(winget.Path)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
if winget.Path == "" {
|
||||||
if path == "" {
|
winget.Path = filepath.Join("manifests", strings.ToLower(string(winget.Publisher[0])), winget.Publisher, winget.Name, ctx.Version)
|
||||||
path = filepath.Join("manifests", strings.ToLower(string(winget.Publisher[0])), winget.Publisher, winget.Name, ctx.Version)
|
|
||||||
}
|
}
|
||||||
winget.Path = path
|
|
||||||
|
|
||||||
filters := []artifact.Filter{
|
filters := []artifact.Filter{
|
||||||
artifact.ByGoos("windows"),
|
artifact.ByGoos("windows"),
|
||||||
@ -226,7 +213,7 @@ func (p Pipe) doRun(ctx *context.Context, winget config.Winget, cl client.Releas
|
|||||||
}
|
}
|
||||||
|
|
||||||
if winget.PackageIdentifier == "" {
|
if winget.PackageIdentifier == "" {
|
||||||
winget.PackageIdentifier = publisher + "." + name
|
winget.PackageIdentifier = winget.Publisher + "." + winget.Name
|
||||||
}
|
}
|
||||||
|
|
||||||
if !packageIdentifierValid.MatchString(winget.PackageIdentifier) {
|
if !packageIdentifierValid.MatchString(winget.PackageIdentifier) {
|
||||||
@ -300,17 +287,17 @@ func (p Pipe) doRun(ctx *context.Context, winget config.Winget, cl client.Releas
|
|||||||
PackageIdentifier: winget.PackageIdentifier,
|
PackageIdentifier: winget.PackageIdentifier,
|
||||||
PackageVersion: ctx.Version,
|
PackageVersion: ctx.Version,
|
||||||
PackageLocale: defaultLocale,
|
PackageLocale: defaultLocale,
|
||||||
Publisher: publisher,
|
Publisher: winget.Publisher,
|
||||||
PublisherURL: winget.PublisherURL,
|
PublisherURL: winget.PublisherURL,
|
||||||
Author: author,
|
Author: winget.Author,
|
||||||
PackageName: name,
|
PackageName: winget.Name,
|
||||||
PackageURL: winget.Homepage,
|
PackageURL: winget.Homepage,
|
||||||
License: winget.License,
|
License: winget.License,
|
||||||
LicenseURL: winget.LicenseURL,
|
LicenseURL: winget.LicenseURL,
|
||||||
Copyright: winget.Copyright,
|
Copyright: winget.Copyright,
|
||||||
ShortDescription: shortDescription,
|
ShortDescription: winget.ShortDescription,
|
||||||
Description: description,
|
Description: winget.Description,
|
||||||
Moniker: name,
|
Moniker: winget.Name,
|
||||||
Tags: []string{},
|
Tags: []string{},
|
||||||
ReleaseNotes: winget.ReleaseNotes,
|
ReleaseNotes: winget.ReleaseNotes,
|
||||||
ReleaseNotesURL: winget.ReleaseNotesURL,
|
ReleaseNotesURL: winget.ReleaseNotesURL,
|
||||||
|
@ -254,6 +254,20 @@ func TestRunPipe(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: "bad-releasenotes-tmpl",
|
||||||
|
expectRunErrorIs: &template.Error{},
|
||||||
|
winget: config.Winget{
|
||||||
|
ReleaseNotes: "{{ .Nope }}",
|
||||||
|
Publisher: "Beckersoft",
|
||||||
|
License: "MIT",
|
||||||
|
ShortDescription: "foo bar zaz",
|
||||||
|
Repository: config.RepoRef{
|
||||||
|
Owner: "foo",
|
||||||
|
Name: "bar",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: "bad-publisher-tmpl",
|
name: "bad-publisher-tmpl",
|
||||||
expectRunErrorIs: &template.Error{},
|
expectRunErrorIs: &template.Error{},
|
||||||
|
Loading…
x
Reference in New Issue
Block a user