Use `NewCapabilities()` func instead of global `DefaultCapabilities`

Signed-off-by: Wahab Ali <wahabalimk@gmail.com>
pull/9320/head
Wahab Ali 5 years ago
parent 46d80f68c1
commit fc26234666

@ -111,7 +111,7 @@ func executeActionCommandStdinC(store *storage.Storage, in *os.File, cmd string)
actionConfig := &action.Configuration{
Releases: store,
KubeClient: &kubefake.PrintingKubeClient{Out: ioutil.Discard},
Capabilities: chartutil.DefaultCapabilities,
Capabilities: chartutil.NewCapabilities(),
Log: func(format string, v ...interface{}) {},
}

@ -83,7 +83,7 @@ func actionConfigFixture(t *testing.T) *Configuration {
return &Configuration{
Releases: storage.Init(driver.NewMemory()),
KubeClient: &kubefake.FailingKubeClient{PrintingKubeClient: kubefake.PrintingKubeClient{Out: ioutil.Discard}},
Capabilities: chartutil.DefaultCapabilities,
Capabilities: chartutil.NewCapabilities(),
RegistryClient: registryClient,
Log: func(format string, v ...interface{}) {
t.Helper()

@ -196,7 +196,7 @@ func (i *Install) Run(chrt *chart.Chart, vals map[string]interface{}) (*release.
if i.ClientOnly {
// Add mock objects in here so it doesn't use Kube API server
// NOTE(bacongobbler): used for `helm template`
i.cfg.Capabilities = chartutil.DefaultCapabilities
i.cfg.Capabilities = chartutil.NewCapabilities()
i.cfg.Capabilities.APIVersions = append(i.cfg.Capabilities.APIVersions, i.APIVersions...)
i.cfg.KubeClient = &kubefake.PrintingKubeClient{Out: ioutil.Discard}

@ -118,7 +118,7 @@ func TestInstallReleaseClientOnly(t *testing.T) {
instAction.ClientOnly = true
instAction.Run(buildChart(), nil) // disregard output
is.Equal(instAction.cfg.Capabilities, chartutil.DefaultCapabilities)
is.Equal(instAction.cfg.Capabilities, chartutil.NewCapabilities())
is.Equal(instAction.cfg.KubeClient, &kubefake.PrintingKubeClient{Out: ioutil.Discard})
}

@ -35,17 +35,6 @@ const (
var (
// DefaultVersionSet is the default version set, which includes only Core V1 ("v1").
DefaultVersionSet = allKnownVersions()
// DefaultCapabilities is the default set of capabilities.
DefaultCapabilities = &Capabilities{
KubeVersion: KubeVersion{
Version: fmt.Sprintf("v%d.%d.0", k8sVersionMajor, k8sVersionMinor),
Major: strconv.Itoa(k8sVersionMajor),
Minor: strconv.Itoa(k8sVersionMinor),
},
APIVersions: DefaultVersionSet,
HelmVersion: helmversion.Get(),
}
)
// Capabilities describes the capabilities of the Kubernetes cluster.
@ -58,6 +47,19 @@ type Capabilities struct {
HelmVersion helmversion.BuildInfo
}
// NewCapabilities returns the default set of capabilities.
func NewCapabilities() *Capabilities {
return &Capabilities{
KubeVersion: KubeVersion{
Version: fmt.Sprintf("v%d.%d.0", k8sVersionMajor, k8sVersionMinor),
Major: strconv.Itoa(k8sVersionMajor),
Minor: strconv.Itoa(k8sVersionMinor),
},
APIVersions: DefaultVersionSet,
HelmVersion: helmversion.Get(),
}
}
// KubeVersion is the Kubernetes version.
type KubeVersion struct {
Version string // Kubernetes version

@ -41,7 +41,7 @@ func TestDefaultVersionSet(t *testing.T) {
}
func TestDefaultCapabilities(t *testing.T) {
kv := DefaultCapabilities.KubeVersion
kv := NewCapabilities().KubeVersion
if kv.String() != "v1.20.0" {
t.Errorf("Expected default KubeVersion.String() to be v1.20.0, got %q", kv.String())
}
@ -60,8 +60,7 @@ func TestDefaultCapabilities(t *testing.T) {
}
func TestDefaultCapabilitiesHelmVersion(t *testing.T) {
hv := DefaultCapabilities.HelmVersion
hv := NewCapabilities().HelmVersion
if hv.Version != "v3.5" {
t.Errorf("Expected default HelmVersion to be v3.5, got %q", hv.Version)
}

@ -136,7 +136,7 @@ type ReleaseOptions struct {
// This takes both ReleaseOptions and Capabilities to merge into the render values.
func ToRenderValues(chrt *chart.Chart, chrtVals map[string]interface{}, options ReleaseOptions, caps *Capabilities) (Values, error) {
if caps == nil {
caps = DefaultCapabilities
caps = NewCapabilities()
}
top := map[string]interface{}{
"Chart": chrt.Metadata,

Loading…
Cancel
Save