From c198e1cd824528ff70e885918ea90fc285bc8972 Mon Sep 17 00:00:00 2001 From: VJ Patel Date: Fri, 17 Jan 2020 23:04:11 +0000 Subject: [PATCH] use go 1.13 errors everywhere and better error message from kubectl apply (#6) --- pkg/kubernetes/BUILD | 2 -- pkg/kubernetes/apply.go | 13 ++++--------- pkg/putil/BUILD | 1 - pkg/putil/write.go | 4 ++-- 4 files changed, 6 insertions(+), 14 deletions(-) diff --git a/pkg/kubernetes/BUILD b/pkg/kubernetes/BUILD index 2c5190a..5d337ec 100644 --- a/pkg/kubernetes/BUILD +++ b/pkg/kubernetes/BUILD @@ -5,7 +5,6 @@ go_library( ], visibility = ["PUBLIC"], deps = [ - "//third_party/go:pkg_errors", ], ) @@ -16,7 +15,6 @@ go_test( ], deps = [ ":kubernetes", - "//third_party/go:pkg_errors", "//third_party/go:stretchr_testify", ], ) diff --git a/pkg/kubernetes/apply.go b/pkg/kubernetes/apply.go index 679bfaf..6df9842 100644 --- a/pkg/kubernetes/apply.go +++ b/pkg/kubernetes/apply.go @@ -5,8 +5,6 @@ import ( "io" "log" "os/exec" - - "github.com/pkg/errors" ) // KubectlOpts represents options/flags to pass to kubectl @@ -21,7 +19,7 @@ func Apply(resources string, opts *KubectlOpts) error { cmd := exec.Command(shCmd[0], shCmd[1:]...) stdin, err := cmd.StdinPipe() if err != nil { - return errors.Wrap(err, "could not create stdin pipe") + return fmt.Errorf("could not create stdin pipe: %w", err) } go func() { defer stdin.Close() @@ -32,13 +30,10 @@ func Apply(resources string, opts *KubectlOpts) error { }() output, err := cmd.CombinedOutput() - if err != nil { - return errors.Wrap(err, resources) - } - if !cmd.ProcessState.Success() { - return errors.Wrap(err, string(output)) + if err != nil || !cmd.ProcessState.Success() { + return fmt.Errorf("%s\n%s:%w", resources, output, err) } - log.Println(string(output)) + log.Printf("%s\n", output) return nil } diff --git a/pkg/putil/BUILD b/pkg/putil/BUILD index 4ecec3d..43dcf9b 100644 --- a/pkg/putil/BUILD +++ b/pkg/putil/BUILD @@ -8,6 +8,5 @@ go_library( deps = [ "//pkg/genproto/v1", "//third_party/go:gogo_protobuf", - "//third_party/go:pkg_errors", ], ) diff --git a/pkg/putil/write.go b/pkg/putil/write.go index 481999f..e9f1eeb 100644 --- a/pkg/putil/write.go +++ b/pkg/putil/write.go @@ -1,13 +1,13 @@ package putil import ( + "fmt" "io/ioutil" "log" "os" "path/filepath" "github.com/gogo/protobuf/proto" - "github.com/pkg/errors" v1 "github.com/thought-machine/dracon/pkg/genproto/v1" ) @@ -56,7 +56,7 @@ func WriteResults( } if err := ioutil.WriteFile(outFile, outBytes, 0644); err != nil { - return errors.Wrapf(err, "could not write to file %s", outFile) + return fmt.Errorf("could not write to file '%s': %w", outFile, err) } log.Printf("wrote %d issues from to %s", len(issues), outFile)