refactor: directly trigger pre-deploy hook from post-release-builder script

This removes the extra indirection in the deploy process for triggering the hooks.
This commit is contained in:
Jose Diaz-Gonzalez
2024-04-04 02:27:43 -04:00
parent 08a136f73f
commit ad5537c086
7 changed files with 26 additions and 23 deletions

View File

@@ -1,5 +1,5 @@
SUBCOMMANDS = subcommands/report subcommands/set
TRIGGERS = triggers/app-json-process-deploy-parallelism triggers/app-json-get-content triggers/core-post-deploy triggers/core-post-extract triggers/install triggers/post-app-clone-setup triggers/post-app-rename triggers/post-app-rename-setup triggers/post-create triggers/post-delete triggers/post-deploy triggers/pre-deploy triggers/report
TRIGGERS = triggers/app-json-process-deploy-parallelism triggers/app-json-get-content triggers/core-post-deploy triggers/core-post-extract triggers/install triggers/post-app-clone-setup triggers/post-app-rename triggers/post-app-rename-setup triggers/post-create triggers/post-delete triggers/post-deploy triggers/post-release-builder triggers/report
BUILD = commands subcommands triggers
PLUGIN_NAME = app-json

View File

@@ -56,10 +56,11 @@ func main() {
appName := flag.Arg(0)
imageTag := flag.Arg(3)
err = appjson.TriggerPostDeploy(appName, imageTag)
case "pre-deploy":
appName := flag.Arg(0)
imageTag := flag.Arg(1)
err = appjson.TriggerPreDeploy(appName, imageTag)
case "post-release-builder":
builderType := flag.Arg(0)
appName := flag.Arg(1)
image := flag.Arg(2)
err = appjson.TriggerPostReleaseBuilder(builderType, appName, image)
case "report":
appName := flag.Arg(0)
err = appjson.ReportSingleApp(appName, "", "")

View File

@@ -212,9 +212,10 @@ func TriggerPostDeploy(appName string, imageTag string) error {
return executeScript(appName, image, imageTag, "postdeploy")
}
// TriggerPreDeploy is a trigger to execute predeploy and release deployment tasks
func TriggerPreDeploy(appName string, imageTag string) error {
image := common.GetAppImageName(appName, imageTag, "")
// TriggerPostReleaseBuilder is a trigger to execute predeploy and release deployment tasks
func TriggerPostReleaseBuilder(builderType string, appName string, image string) error {
parts := strings.Split(image, ":")
imageTag := parts[len(parts)-1]
if err := executeScript(appName, image, imageTag, "predeploy"); err != nil {
return err
}