From 40de5c5c644d69c3d33a6d0cf16e539a0f40423b Mon Sep 17 00:00:00 2001 From: Carlos Alexandro Becker Date: Mon, 2 Jan 2017 13:20:33 -0200 Subject: [PATCH] added errcheck --- .travis.yml | 2 ++ config/config_test.go | 10 ++++++++-- main.go | 4 +++- pipeline/compress/compress.go | 20 ++++++++++++-------- pipeline/release/release.go | 14 ++++++++++---- 5 files changed, 35 insertions(+), 15 deletions(-) diff --git a/.travis.yml b/.travis.yml index 31a5bf204..89100beb8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -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 diff --git a/config/config_test.go b/config/config_test.go index 3b4a9459e..e1f378ee4 100644 --- a/config/config_test.go +++ b/config/config_test.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 { + t.Error(err) + } + defer func() { + if err := os.Chdir(cwd); err != nil { + t.Error(err) + } + }() config := ProjectConfig{} err := config.fillFiles() diff --git a/main.go b/main.go index 243a90791..e51ac7fb1 100644 --- a/main.go +++ b/main.go @@ -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) + } } diff --git a/pipeline/compress/compress.go b/pipeline/compress/compress.go index 33cd1bd52..9edd3ac58 100644 --- a/pipeline/compress/compress.go +++ b/pipeline/compress/compress.go @@ -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 { diff --git a/pipeline/release/release.go b/pipeline/release/release.go index 4c1d3f348..9f3c463e4 100644 --- a/pipeline/release/release.go +++ b/pipeline/release/release.go @@ -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 }