feat: Add install and refactor some tests

This adds install to the action package, and then fixes up a lot of testing.

Signed-off-by: Matt Butcher <matt.butcher@microsoft.com>
pull/5171/head
Matt Butcher 7 years ago
parent 1b51da9aa4
commit 041f3583e7
No known key found for this signature in database
GPG Key ID: DCD5F5E5EF32C345

@ -19,6 +19,7 @@ package action
import ( import (
"time" "time"
"github.com/pkg/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/discovery" "k8s.io/client-go/discovery"
@ -49,11 +50,19 @@ type Configuration struct {
} }
// capabilities builds a Capabilities from discovery information. // capabilities builds a Capabilities from discovery information.
func (c *Configuration) capabilities() *chartutil.Capabilities { func (c *Configuration) capabilities() (*chartutil.Capabilities, error) {
if c.Capabilities == nil { sv, err := c.Discovery.ServerVersion()
return chartutil.DefaultCapabilities if err != nil {
return nil, err
}
vs, err := GetVersionSet(c.Discovery)
if err != nil {
return nil, errors.Wrap(err, "could not get apiVersions from Kubernetes")
} }
return c.Capabilities return &chartutil.Capabilities{
APIVersions: vs,
KubeVersion: sv,
}, nil
} }
// Now generates a timestamp // Now generates a timestamp

@ -79,7 +79,10 @@ func (i *Install) Run(chrt *chart.Chart, rawValues map[string]interface{}) (*rel
return nil, err return nil, err
} }
caps := i.cfg.capabilities() caps, err := i.cfg.capabilities()
if err != nil {
return nil, err
}
options := chartutil.ReleaseOptions{ options := chartutil.ReleaseOptions{
Name: i.ReleaseName, Name: i.ReleaseName,

Loading…
Cancel
Save