From f05ba2b1a9bb78d9d749024668ac6e330faec0c0 Mon Sep 17 00:00:00 2001 From: Matt Butcher Date: Mon, 26 Sep 2016 17:48:21 -0600 Subject: [PATCH] fix(helm): if server is old, report this in a friendly way If 'helm version' is run on an old server, it will emit an error telling you the server is too old. Closes #1223 --- cmd/helm/version.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/cmd/helm/version.go b/cmd/helm/version.go index e22d0a800..1242a4667 100644 --- a/cmd/helm/version.go +++ b/cmd/helm/version.go @@ -17,10 +17,13 @@ limitations under the License. package main import ( + "errors" "fmt" "io" "github.com/spf13/cobra" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" "k8s.io/helm/pkg/helm" "k8s.io/helm/pkg/version" @@ -56,6 +59,9 @@ func (v *versionCmd) run() error { resp, err := v.client.GetVersion() if err != nil { + if grpc.Code(err) == codes.Unimplemented { + return errors.New("server is too old to know its version") + } return err } fmt.Fprintf(v.out, "Server: %#v\n", resp.Version)