fix: rename fallback constants and log warning on BuildInfo failure

Rename kubeVersionMajorTesting/MinorTesting to kubeVersionMajorDefault/
MinorDefault to reflect their use as general fallback values, not just
for testing. Log a warning when falling back to the default Kubernetes
version so the behavior is diagnosable.

Signed-off-by: Terry Howe <terrylhowe@gmail.com>
pull/31912/head
Terry Howe 7 months ago
parent 6e445ec679
commit 5220dd2d0b
No known key found for this signature in database

@ -17,6 +17,7 @@ package common
import ( import (
"fmt" "fmt"
"log/slog"
"slices" "slices"
"strconv" "strconv"
"strings" "strings"
@ -33,8 +34,8 @@ import (
) )
const ( const (
kubeVersionMajorTesting = 1 kubeVersionMajorDefault = 1
kubeVersionMinorTesting = 20 kubeVersionMinorDefault = 20
) )
var ( var (
@ -147,14 +148,15 @@ func makeDefaultCapabilities() (*Capabilities, error) {
// (And even if they did, we probably want stable capabilities for tests anyway) // (And even if they did, we probably want stable capabilities for tests anyway)
// Return a default value for test builds // Return a default value for test builds
if testing.Testing() { if testing.Testing() {
return newCapabilities(kubeVersionMajorTesting, kubeVersionMinorTesting) return newCapabilities(kubeVersionMajorDefault, kubeVersionMinorDefault)
} }
vstr, err := helmversion.K8sIOClientGoModVersion() vstr, err := helmversion.K8sIOClientGoModVersion()
if err != nil { if err != nil {
// Build info may be unavailable when compiled with toolchains other // Build info may be unavailable when compiled with toolchains other
// than "go build" (e.g. Bazel). Fall back to a safe default. // than "go build" (e.g. Bazel). Fall back to a safe default.
return newCapabilities(kubeVersionMajorTesting, kubeVersionMinorTesting) slog.Warn("failed to retrieve k8s.io/client-go version, falling back to default Kubernetes version", slog.Any("error", err))
return newCapabilities(kubeVersionMajorDefault, kubeVersionMinorDefault)
} }
v, err := semver.NewVersion(vstr) v, err := semver.NewVersion(vstr)

Loading…
Cancel
Save