From 21b9d3232950491790af972f6ea0bbde74ae49c3 Mon Sep 17 00:00:00 2001 From: Erin Call Date: Thu, 16 Jan 2020 13:57:28 -0800 Subject: [PATCH] Remove the tiny helper functions from plan.go [#67] Now that InitKube, AddRepo, and UpdateDependencies are initialized with NewSTEPNAME functions, the helper functions in plan.go are unnecessary--they do too little to be a useful abstraction, and they aren't complex or frequently-used enough to be worth extracting. --- internal/helm/plan.go | 38 ++++++++++++++------------------------ internal/helm/plan_test.go | 31 ------------------------------- 2 files changed, 14 insertions(+), 55 deletions(-) diff --git a/internal/helm/plan.go b/internal/helm/plan.go index 391d220..bb1e901 100644 --- a/internal/helm/plan.go +++ b/internal/helm/plan.go @@ -93,10 +93,13 @@ func (p *Plan) Execute() error { } var upgrade = func(cfg env.Config) []Step { - steps := initKube(cfg) - steps = append(steps, addRepos(cfg)...) + var steps []Step + steps = append(steps, run.NewInitKube(cfg, kubeConfigTemplate, kubeConfigFile)) + for _, repo := range cfg.AddRepos { + steps = append(steps, run.NewAddRepo(repo)) + } if cfg.UpdateDependencies { - steps = append(steps, depUpdate(cfg)...) + steps = append(steps, run.NewDepUpdate(cfg)) } steps = append(steps, run.NewUpgrade(cfg)) @@ -104,9 +107,10 @@ var upgrade = func(cfg env.Config) []Step { } var uninstall = func(cfg env.Config) []Step { - steps := initKube(cfg) + var steps []Step + steps = append(steps, run.NewInitKube(cfg, kubeConfigTemplate, kubeConfigFile)) if cfg.UpdateDependencies { - steps = append(steps, depUpdate(cfg)...) + steps = append(steps, run.NewDepUpdate(cfg)) } steps = append(steps, run.NewUninstall(cfg)) @@ -114,9 +118,12 @@ var uninstall = func(cfg env.Config) []Step { } var lint = func(cfg env.Config) []Step { - steps := addRepos(cfg) + var steps []Step + for _, repo := range cfg.AddRepos { + steps = append(steps, run.NewAddRepo(repo)) + } if cfg.UpdateDependencies { - steps = append(steps, depUpdate(cfg)...) + steps = append(steps, run.NewDepUpdate(cfg)) } steps = append(steps, run.NewLint(cfg)) return steps @@ -125,20 +132,3 @@ var lint = func(cfg env.Config) []Step { var help = func(cfg env.Config) []Step { return []Step{run.NewHelp(cfg)} } - -func initKube(cfg env.Config) []Step { - return []Step{run.NewInitKube(cfg, kubeConfigTemplate, kubeConfigFile)} -} - -func addRepos(cfg env.Config) []Step { - steps := make([]Step, 0) - for _, repo := range cfg.AddRepos { - steps = append(steps, run.NewAddRepo(repo)) - } - - return steps -} - -func depUpdate(cfg env.Config) []Step { - return []Step{run.NewDepUpdate(cfg)} -} diff --git a/internal/helm/plan_test.go b/internal/helm/plan_test.go index f922010..a792440 100644 --- a/internal/helm/plan_test.go +++ b/internal/helm/plan_test.go @@ -175,37 +175,6 @@ func (suite *PlanTestSuite) TestUninstallWithUpdateDependencies() { suite.IsType(&run.DepUpdate{}, steps[1]) } -func (suite *PlanTestSuite) TestInitKube() { - cfg := env.Config{} - - steps := initKube(cfg) - suite.Require().Equal(1, len(steps), "initKube should return one step") - suite.IsType(&run.InitKube{}, steps[0]) -} - -func (suite *PlanTestSuite) TestDepUpdate() { - cfg := env.Config{ - UpdateDependencies: true, - } - - steps := depUpdate(cfg) - suite.Require().Equal(1, len(steps), "depUpdate should return one step") - suite.IsType(&run.DepUpdate{}, steps[0]) -} - -func (suite *PlanTestSuite) TestAddRepos() { - cfg := env.Config{ - AddRepos: []string{ - "first=https://add.repos/one", - "second=https://add.repos/two", - }, - } - steps := addRepos(cfg) - suite.Require().Equal(2, len(steps), "addRepos should add one step per repo") - suite.IsType(&run.AddRepo{}, steps[0]) - suite.IsType(&run.AddRepo{}, steps[1]) -} - func (suite *PlanTestSuite) TestLint() { steps := lint(env.Config{}) suite.Require().Equal(1, len(steps))