You've already forked goreleaser
mirror of
https://github.com/goreleaser/goreleaser.git
synced 2026-05-16 09:20:15 +02:00
@@ -15,6 +15,8 @@ script:
|
||||
--enable=goimports \
|
||||
--enable=dupl \
|
||||
--enable=misspell \
|
||||
--enable=errcheck \
|
||||
--deadline=2m \
|
||||
./...
|
||||
after_success:
|
||||
test ! -z "$TRAVIS_TAG" && go run main.go
|
||||
|
||||
@@ -73,8 +73,14 @@ func assertFiles(t *testing.T, dir string, files []string) {
|
||||
assert := assert.New(t)
|
||||
|
||||
cwd, _ := os.Getwd()
|
||||
os.Chdir(dir)
|
||||
defer os.Chdir(cwd)
|
||||
if err := os.Chdir(dir); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
defer func() {
|
||||
if err := os.Chdir(cwd); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}()
|
||||
|
||||
config := ProjectConfig{}
|
||||
err := config.fillFiles()
|
||||
|
||||
@@ -49,5 +49,7 @@ func main() {
|
||||
log.Println("Done!")
|
||||
return
|
||||
}
|
||||
app.Run(os.Args)
|
||||
if err := app.Run(os.Args); err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -41,11 +41,13 @@ func create(system, arch string, config config.ProjectConfig) error {
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer file.Close()
|
||||
gw := gzip.NewWriter(file)
|
||||
defer gw.Close()
|
||||
tw := tar.NewWriter(gw)
|
||||
defer tw.Close()
|
||||
defer func() {
|
||||
_ = file.Close()
|
||||
_ = gw.Close()
|
||||
_ = tw.Close()
|
||||
}()
|
||||
for _, f := range config.Files {
|
||||
if err := addFile(tw, f, f); err != nil {
|
||||
return err
|
||||
@@ -54,15 +56,17 @@ func create(system, arch string, config config.ProjectConfig) error {
|
||||
return addFile(tw, config.BinaryName+ext(system), binaryPath(system, arch, config.BinaryName))
|
||||
}
|
||||
|
||||
func addFile(tw *tar.Writer, name, path string) error {
|
||||
func addFile(tw *tar.Writer, name, path string) (err error) {
|
||||
file, err := os.Open(path)
|
||||
if err != nil {
|
||||
return err
|
||||
return
|
||||
}
|
||||
defer file.Close()
|
||||
defer func() {
|
||||
_ = file.Close()
|
||||
}()
|
||||
stat, err := file.Stat()
|
||||
if err != nil {
|
||||
return err
|
||||
return
|
||||
}
|
||||
header := new(tar.Header)
|
||||
header.Name = name
|
||||
@@ -75,7 +79,7 @@ func addFile(tw *tar.Writer, name, path string) error {
|
||||
if _, err := io.Copy(tw, file); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
return
|
||||
}
|
||||
|
||||
func nameFor(system, arch, binary string) string {
|
||||
|
||||
@@ -69,10 +69,16 @@ func upload(client *github.Client, releaseID int, owner, repo, system, arch, bin
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer file.Close()
|
||||
defer func() {
|
||||
_ = file.Close()
|
||||
}()
|
||||
log.Println("Uploading", file.Name(), "...")
|
||||
_, _, err = client.Repositories.UploadReleaseAsset(owner, repo, releaseID, &github.UploadOptions{
|
||||
Name: name,
|
||||
}, file)
|
||||
_, _, err = client.Repositories.UploadReleaseAsset(
|
||||
owner,
|
||||
repo,
|
||||
releaseID,
|
||||
&github.UploadOptions{Name: name},
|
||||
file,
|
||||
)
|
||||
return err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user