refactor: first pass at rewriting apps plugin in go

This commit is contained in:
Jose Diaz-Gonzalez
2020-03-10 14:14:37 -04:00
parent 48dc5d8cc1
commit b968ced6e9
67 changed files with 3829 additions and 471 deletions

View File

@@ -0,0 +1,46 @@
package main
import (
"flag"
"fmt"
"os"
"strings"
"github.com/dokku/dokku/plugins/apps"
"github.com/dokku/dokku/plugins/common"
)
// main entrypoint to all triggers
func main() {
parts := strings.Split(os.Args[0], "/")
trigger := parts[len(parts)-1]
flag.Parse()
var err error
switch trigger {
case "app-create":
appName := flag.Arg(0)
apps.TriggerAppCreate(appName)
case "app-destroy":
appName := flag.Arg(0)
apps.TriggerAppDestroy(appName)
case "app-exists":
appName := flag.Arg(0)
apps.TriggerAppExists(appName)
case "app-maybe-create":
appName := flag.Arg(0)
apps.TriggerAppMaybeCreate(appName)
case "post-delete":
appName := flag.Arg(0)
apps.TriggerPostDelete(appName)
case "report":
appName := flag.Arg(0)
err = apps.ReportSingleApp(appName, "")
default:
common.LogFail(fmt.Sprintf("Invalid plugin trigger call: %s", trigger))
}
if err != nil {
common.LogFail(err.Error())
}
}