@@ -14,6 +14,7 @@ import (
1414 "github.com/appscode/stash/pkg/controller"
1515 "github.com/appscode/stash/pkg/docker"
1616 "github.com/appscode/stash/pkg/migrator"
17+ "github.com/hashicorp/go-version"
1718 "github.com/prometheus/client_golang/prometheus/promhttp"
1819 "github.com/spf13/cobra"
1920 crd_cs "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset/typed/apiextensions/v1beta1"
@@ -52,13 +53,16 @@ func NewCmdRun() *cobra.Command {
5253 crdClient := crd_cs .NewForConfigOrDie (config )
5354
5455 // get kube api server version
55- version , err := kubeClient .Discovery ().ServerVersion ()
56+ info , err := kubeClient .Discovery ().ServerVersion ()
5657 if err != nil {
5758 log .Fatalf ("Error getting server version, reason: %s\n " , err )
5859 }
59-
60+ gv , err := version .NewVersion (info .GitVersion )
61+ if err != nil {
62+ log .Fatalf ("Failed to parse server version, reason: %s\n " , err )
63+ }
6064 // check kubectl image
61- opts .KubectlImageTag = version . Major + "." + version . Minor + ".0"
65+ opts .KubectlImageTag = gv . ToMutator (). ResetMetadata (). ResetPrerelease (). ResetPatch (). String ()
6266 if err := docker .CheckDockerImageVersion (docker .ImageKubectl , opts .KubectlImageTag ); err != nil {
6367 log .Fatalf (`Image %v:%v not found.` , docker .ImageKubectl , opts .KubectlImageTag )
6468 }
0 commit comments