Instantiate a Delete when appropriate [#4]

"delete" would be a more natural name for the instantiation function,
but that's a reserved word in golang.
This commit is contained in:
Erin Call
2019-12-18 16:58:31 -08:00
parent a21d6ad61f
commit f398ee5724
2 changed files with 73 additions and 1 deletions

View File

@@ -60,7 +60,7 @@ func determineSteps(cfg Config) *func(Config) []Step {
case "upgrade":
return &upgrade
case "delete":
panic("not implemented")
return &del
case "lint":
panic("not implemented")
case "help":
@@ -69,6 +69,8 @@ func determineSteps(cfg Config) *func(Config) []Step {
switch cfg.DroneEvent {
case "push", "tag", "deployment", "pull_request", "promote", "rollback":
return &upgrade
case "delete":
return &del
default:
panic("not implemented")
}
@@ -116,6 +118,23 @@ var upgrade = func(cfg Config) []Step {
return steps
}
var del = func(cfg Config) []Step {
return []Step{
&run.InitKube{
SkipTLSVerify: cfg.SkipTLSVerify,
Certificate: cfg.Certificate,
APIServer: cfg.APIServer,
ServiceAccount: cfg.ServiceAccount,
Token: cfg.KubeToken,
TemplateFile: kubeConfigTemplate,
},
&run.Delete{
Release: cfg.Release,
DryRun: cfg.DryRun,
},
}
}
var help = func(cfg Config) []Step {
help := &run.Help{}
return []Step{help}