diff --git a/cmd/shipperctl/cmd/chart/app.go b/cmd/shipperctl/cmd/chart/app.go index da1ee6107..65b5a0c0d 100644 --- a/cmd/shipperctl/cmd/chart/app.go +++ b/cmd/shipperctl/cmd/chart/app.go @@ -1,6 +1,7 @@ package chart import ( + "fmt" "io/ioutil" "os" @@ -74,9 +75,9 @@ func renderChartFromApp(cmd *cobra.Command, args []string) error { } - if err := populateFromApp(shipperClient, &c, application); err != nil { - return err - } + c.ReleaseName = fmt.Sprintf("%s-%s-%d", application.Name, "foobar", 0) + c.ChartSpec = application.Spec.Template.Chart + c.ChartValues = application.Spec.Template.Values rendered, err := render(c) if err != nil { return err diff --git a/cmd/shipperctl/cmd/chart/release.go b/cmd/shipperctl/cmd/chart/release.go index 7bf188fd9..f90d7d434 100644 --- a/cmd/shipperctl/cmd/chart/release.go +++ b/cmd/shipperctl/cmd/chart/release.go @@ -1,8 +1,10 @@ package chart import ( - "github.com/bookingcom/shipper/cmd/shipperctl/config" "github.com/spf13/cobra" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + + "github.com/bookingcom/shipper/cmd/shipperctl/config" ) var ( @@ -31,9 +33,13 @@ func renderChartFromRel(cmd *cobra.Command, args []string) error { return err } - if err := populateFormRelease(shipperClient, &c); err != nil { + rel, err := shipperClient.ShipperV1alpha1().Releases(namespace).Get(releaseName, metav1.GetOptions{}) + if err != nil { return err } + c.ReleaseName = rel.Name + c.ChartSpec = rel.Spec.Environment.Chart + c.ChartValues = rel.Spec.Environment.Values rendered, err := render(c) if err != nil { diff --git a/cmd/shipperctl/cmd/chart/render.go b/cmd/shipperctl/cmd/chart/render.go index f7a9d1441..15059069f 100644 --- a/cmd/shipperctl/cmd/chart/render.go +++ b/cmd/shipperctl/cmd/chart/render.go @@ -1,20 +1,17 @@ package chart import ( - "fmt" "os" "path/filepath" "strings" "github.com/spf13/cobra" - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "github.com/bookingcom/shipper/cmd/shipperctl/config" "github.com/bookingcom/shipper/cmd/shipperctl/configurator" shipper "github.com/bookingcom/shipper/pkg/apis/shipper/v1alpha1" shipperchart "github.com/bookingcom/shipper/pkg/chart" "github.com/bookingcom/shipper/pkg/chart/repo" - shipperclientset "github.com/bookingcom/shipper/pkg/client/clientset/versioned" ) var ( @@ -75,11 +72,11 @@ func render(c ChartRenderConfig) (string, error) { func newChartRenderConfig() (ChartRenderConfig, error) { c := ChartRenderConfig{ } - clientConfig, _, err := configurator.ClientConfig(kubeConfigFile, managementClusterContext) - if err != nil { - return c, err - } if namespace == "" { + clientConfig, _, err := configurator.ClientConfig(kubeConfigFile, managementClusterContext) + if err != nil { + return c, err + } namespace, _, err = clientConfig.Namespace() if err != nil { return c, err @@ -90,25 +87,6 @@ func newChartRenderConfig() (ChartRenderConfig, error) { return c, nil } -func populateFormRelease(shipperClient shipperclientset.Interface, c *ChartRenderConfig) error { - rel, err := shipperClient.ShipperV1alpha1().Releases(namespace).Get(releaseName, metav1.GetOptions{}) - if err != nil { - return err - } - - c.ReleaseName = releaseName - c.ChartSpec = rel.Spec.Environment.Chart - c.ChartValues = rel.Spec.Environment.Values - return nil -} - -func populateFromApp(shipperClient shipperclientset.Interface, c *ChartRenderConfig, app shipper.Application) error { - c.ReleaseName = fmt.Sprintf("%s-%s-%d", app.Name, "foobar", 0) - c.ChartSpec = app.Spec.Template.Chart - c.ChartValues = app.Spec.Template.Values - return nil -} - func newFetchChartFunc() repo.ChartFetcher { stopCh := make(<-chan struct{}) diff --git a/cmd/shipperctl/cmd/chart/render_test.go b/cmd/shipperctl/cmd/chart/render_test.go new file mode 100644 index 000000000..58a733f99 --- /dev/null +++ b/cmd/shipperctl/cmd/chart/render_test.go @@ -0,0 +1 @@ +package chart