From 776013b0f49c3495279bd7dc36144b1461a36e31 Mon Sep 17 00:00:00 2001 From: Jose Diaz-Gonzalez Date: Thu, 19 Jun 2025 01:09:15 -0400 Subject: [PATCH] fix: write the cron config after the app.json has been deleted Without this, we try to write the config for the app even though it doesn't exist anymore, causing issues with deleting apps with invalid cron configs. --- plugins/cron/Makefile | 2 +- plugins/cron/src/triggers/triggers.go | 3 --- plugins/cron/triggers.go | 11 +++++------ 3 files changed, 6 insertions(+), 10 deletions(-) diff --git a/plugins/cron/Makefile b/plugins/cron/Makefile index 20ddf156e..920941136 100644 --- a/plugins/cron/Makefile +++ b/plugins/cron/Makefile @@ -1,5 +1,5 @@ SUBCOMMANDS = subcommands/list subcommands/report subcommands/run subcommands/set -TRIGGERS = triggers/cron-get-property triggers/install triggers/post-app-clone-setup triggers/post-app-rename-setup triggers/pre-delete triggers/post-delete triggers/scheduler-stop +TRIGGERS = triggers/cron-get-property triggers/install triggers/post-app-clone-setup triggers/post-app-rename-setup triggers/post-delete triggers/scheduler-stop BUILD = commands subcommands triggers PLUGIN_NAME = cron diff --git a/plugins/cron/src/triggers/triggers.go b/plugins/cron/src/triggers/triggers.go index a5a5ed98d..6e0de5e7a 100644 --- a/plugins/cron/src/triggers/triggers.go +++ b/plugins/cron/src/triggers/triggers.go @@ -40,9 +40,6 @@ func main() { case "post-delete": appName := flag.Arg(0) err = cron.TriggerPostDelete(appName) - case "pre-delete": - appName := flag.Arg(0) - err = cron.TriggerPreDelete(appName) case "report": appName := flag.Arg(0) err = cron.ReportSingleApp(appName, "", "") diff --git a/plugins/cron/triggers.go b/plugins/cron/triggers.go index 3b5c5d929..383a7cd3a 100644 --- a/plugins/cron/triggers.go +++ b/plugins/cron/triggers.go @@ -55,19 +55,18 @@ func TriggerPostAppRenameSetup(oldAppName string, newAppName string) error { return nil } -// TriggerPreDelete stops cron for a given app -func TriggerPreDelete(appName string) error { +// TriggerPostDelete destroys the cron property for a given app container +func TriggerPostDelete(appName string) error { scheduler := common.GetAppScheduler(appName) _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ Trigger: "scheduler-cron-write", Args: []string{scheduler, appName}, StreamStdio: true, }) - return err -} + if err != nil { + return err + } -// TriggerPostDelete destroys the cron property for a given app container -func TriggerPostDelete(appName string) error { if err := common.PropertyDestroy("cron", appName); err != nil { return err }