diff --git a/server/version/version.go b/server/version/version.go index a35d0c2665..0ec94f03c9 100644 --- a/server/version/version.go +++ b/server/version/version.go @@ -39,7 +39,7 @@ func (s *Server) Version(ctx context.Context, _ *empty.Empty) (*version.VersionM } if s.kustomizeVersion == "" { - kustomizeVersion, err := kustomize.Version(true) + kustomizeVersion, err := kustomize.Version() if err == nil { s.kustomizeVersion = kustomizeVersion } else { @@ -47,7 +47,7 @@ func (s *Server) Version(ctx context.Context, _ *empty.Empty) (*version.VersionM } } if s.helmVersion == "" { - helmVersion, err := helm.Version(true) + helmVersion, err := helm.Version() if err == nil { s.helmVersion = helmVersion } else { diff --git a/util/helm/helm.go b/util/helm/helm.go index 57642b990c..87d5b551aa 100644 --- a/util/helm/helm.go +++ b/util/helm/helm.go @@ -118,15 +118,9 @@ func (h *helm) Dispose() { h.cmd.Close() } -func Version(shortForm bool) (string, error) { - executable := "helm" - cmdArgs := []string{"version", "--client"} - if shortForm { - cmdArgs = append(cmdArgs, "--short") - } - cmd := exec.Command(executable, cmdArgs...) +func Version() (string, error) { + cmd := exec.Command("helm", "version", "--client", "--short") // example version output: - // long: "version.BuildInfo{Version:\"v3.3.1\", GitCommit:\"249e5215cde0c3fa72e27eb7a30e8d55c9696144\", GitTreeState:\"clean\", GoVersion:\"go1.14.7\"}" // short: "v3.3.1+g249e521" version, err := executil.RunWithRedactor(cmd, redactor) if err != nil { diff --git a/util/helm/helm_test.go b/util/helm/helm_test.go index a5ade55a0d..66cc3fde71 100644 --- a/util/helm/helm_test.go +++ b/util/helm/helm_test.go @@ -175,7 +175,7 @@ func TestHelmArgCleaner(t *testing.T) { } func TestVersion(t *testing.T) { - ver, err := Version(false) + ver, err := Version() require.NoError(t, err) assert.NotEmpty(t, ver) } diff --git a/util/kustomize/kustomize.go b/util/kustomize/kustomize.go index 76b7b95c84..ed6417b106 100644 --- a/util/kustomize/kustomize.go +++ b/util/kustomize/kustomize.go @@ -398,7 +398,7 @@ var ( // getSemver returns parsed kustomize version func getSemver() (*semver.Version, error) { - verStr, err := Version(true) + verStr, err := Version() if err != nil { return nil, err } @@ -429,33 +429,25 @@ func getSemverSafe() *semver.Version { return semVer } -func Version(shortForm bool) (string, error) { - executable := "kustomize" - cmdArgs := []string{"version"} - if shortForm { - cmdArgs = append(cmdArgs, "--short") - } - cmd := exec.Command(executable, cmdArgs...) +func Version() (string, error) { + cmd := exec.Command("kustomize", "version", "--short") // example version output: - // long: "{Version:kustomize/v3.8.1 GitCommit:0b359d0ef0272e6545eda0e99aacd63aef99c4d0 BuildDate:2020-07-16T00:58:46Z GoOs:linux GoArch:amd64}" // short: "{kustomize/v3.8.1 2020-07-16T00:58:46Z }" version, err := executil.Run(cmd) if err != nil { return "", fmt.Errorf("could not get kustomize version: %w", err) } version = strings.TrimSpace(version) - if shortForm { - // trim the curly braces - version = strings.TrimPrefix(version, "{") - version = strings.TrimSuffix(version, "}") - version = strings.TrimSpace(version) + // trim the curly braces + version = strings.TrimPrefix(version, "{") + version = strings.TrimSuffix(version, "}") + version = strings.TrimSpace(version) - // remove double space in middle - version = strings.ReplaceAll(version, " ", " ") + // remove double space in middle + version = strings.ReplaceAll(version, " ", " ") - // remove extra 'kustomize/' before version - version = strings.TrimPrefix(version, "kustomize/") - } + // remove extra 'kustomize/' before version + version = strings.TrimPrefix(version, "kustomize/") return version, nil } diff --git a/util/kustomize/kustomize_test.go b/util/kustomize/kustomize_test.go index a8aac92709..bf8d122bd3 100644 --- a/util/kustomize/kustomize_test.go +++ b/util/kustomize/kustomize_test.go @@ -170,7 +170,7 @@ func TestParseKustomizeBuildHelmOptions(t *testing.T) { } func TestVersion(t *testing.T) { - ver, err := Version(false) + ver, err := Version() require.NoError(t, err) assert.NotEmpty(t, ver) }