From 7b5a837b04d1f61349206180da8ebb633d516e4c Mon Sep 17 00:00:00 2001 From: Kazuki Suda Date: Sun, 24 Dec 2017 23:08:49 +0900 Subject: [PATCH] helm template: display the default value of --kube-version in help message This commit improves to display the default value of --kube-version in help message of `helm template` command. ``` --kube-version string kubernetes version used as Capabilities.KubeVersion.Major/Minor (default "1.9") ``` --- cmd/helm/template.go | 26 +++++++++++++++----------- docs/helm/helm_template.md | 4 ++-- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/cmd/helm/template.go b/cmd/helm/template.go index aba3c3ffe..4bfd4f7a3 100644 --- a/cmd/helm/template.go +++ b/cmd/helm/template.go @@ -42,7 +42,12 @@ import ( const defaultDirectoryPermission = 0755 -var whitespaceRegex = regexp.MustCompile(`^\s*$`) +var ( + whitespaceRegex = regexp.MustCompile(`^\s*$`) + + // defaultKubeVersion is the default value of --kube-version flag + defaultKubeVersion = fmt.Sprintf("%s.%s", chartutil.DefaultKubeVersion.Major, chartutil.DefaultKubeVersion.Minor) +) const templateDesc = ` Render chart templates locally and display the output. @@ -92,7 +97,7 @@ func newTemplateCmd(out io.Writer) *cobra.Command { f.StringVar(&t.namespace, "namespace", "", "namespace to install the release into") f.StringArrayVar(&t.values, "set", []string{}, "set values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2)") f.StringVar(&t.nameTemplate, "name-template", "", "specify template used to name the release") - f.StringVar(&t.kubeVersion, "kube-version", "", "override the Kubernetes version used as Capabilities.KubeVersion.Major/Minor (e.g. 1.7)") + f.StringVar(&t.kubeVersion, "kube-version", defaultKubeVersion, "kubernetes version used as Capabilities.KubeVersion.Major/Minor") f.StringVar(&t.outputDir, "output-dir", "", "writes the executed templates to files in output-dir instead of stdout") return cmd @@ -194,17 +199,16 @@ func (t *templateCmd) run(cmd *cobra.Command, args []string) error { KubeVersion: chartutil.DefaultKubeVersion, TillerVersion: tversion.GetVersionProto(), } - // If --kube-versionis set, try to parse it as SemVer, and override the + // kubernetes version - if t.kubeVersion != "" { - kv, err := semver.NewVersion(t.kubeVersion) - if err != nil { - return fmt.Errorf("could not parse a kubernetes version: %v", err) - } - caps.KubeVersion.Major = fmt.Sprint(kv.Major()) - caps.KubeVersion.Minor = fmt.Sprint(kv.Minor()) - caps.KubeVersion.GitVersion = fmt.Sprintf("v%d.%d.0", kv.Major(), kv.Minor()) + kv, err := semver.NewVersion(t.kubeVersion) + if err != nil { + return fmt.Errorf("could not parse a kubernetes version: %v", err) } + caps.KubeVersion.Major = fmt.Sprint(kv.Major()) + caps.KubeVersion.Minor = fmt.Sprint(kv.Minor()) + caps.KubeVersion.GitVersion = fmt.Sprintf("v%d.%d.0", kv.Major(), kv.Minor()) + vals, err := chartutil.ToRenderValuesCaps(c, config, options, caps) if err != nil { return err diff --git a/docs/helm/helm_template.md b/docs/helm/helm_template.md index 983652dba..f850fa4a8 100644 --- a/docs/helm/helm_template.md +++ b/docs/helm/helm_template.md @@ -26,7 +26,7 @@ helm template [flags] CHART ``` -x, --execute stringArray only execute the given templates - --kube-version string override the Kubernetes version used as Capabilities.KubeVersion.Major/Minor (e.g. 1.7) + --kube-version string kubernetes version used as Capabilities.KubeVersion.Major/Minor (default "1.9") -n, --name string release name (default "RELEASE-NAME") --name-template string specify template used to name the release --namespace string namespace to install the release into @@ -50,4 +50,4 @@ helm template [flags] CHART ### SEE ALSO * [helm](helm.md) - The Helm package manager for Kubernetes. -###### Auto generated by spf13/cobra on 15-Nov-2017 +###### Auto generated by spf13/cobra on 17-Jan-2018