diff --git a/plugins/common/src/triggers/triggers.go b/plugins/common/src/triggers/triggers.go index 8ba0d3866..0f911f1ec 100644 --- a/plugins/common/src/triggers/triggers.go +++ b/plugins/common/src/triggers/triggers.go @@ -24,6 +24,14 @@ func main() { err = common.TriggerCorePostDeploy(appName) case "install": err = common.TriggerInstall() + case "post-app-clone-setup": + oldAppName := flag.Arg(0) + newAppName := flag.Arg(1) + err = common.TriggerPostAppCloneSetup(oldAppName, newAppName) + case "post-app-rename-setup": + oldAppName := flag.Arg(0) + newAppName := flag.Arg(1) + err = common.TriggerPostAppRenameSetup(oldAppName, newAppName) case "post-delete": appName := flag.Arg(0) err = common.TriggerPostDelete(appName) diff --git a/plugins/common/triggers.go b/plugins/common/triggers.go index 9bb6ef840..eccb3b577 100644 --- a/plugins/common/triggers.go +++ b/plugins/common/triggers.go @@ -43,6 +43,32 @@ func TriggerInstall() error { return nil } +// TriggerPostAppCloneSetup copies common files +func TriggerPostAppCloneSetup(oldAppName string, newAppName string) error { + if err := PropertyClone("common", oldAppName, newAppName); err != nil { + return err + } + + if err := PropertyDelete("common", oldAppName, "deployed"); err != nil { + return err + } + + return nil +} + +// TriggerPostAppRenameSetup renames common files +func TriggerPostAppRenameSetup(oldAppName string, newAppName string) error { + if err := PropertyClone("common", oldAppName, newAppName); err != nil { + return err + } + + if err := PropertyDestroy("common", oldAppName); err != nil { + return err + } + + return nil +} + // TriggerPostDelete destroys the common property for a given app container func TriggerPostDelete(appName string) error { return PropertyDestroy("common", appName)