refactor: move host-crontab generation into cron plugin

Host-crontab generation for `app.json` cron tasks now lives in the `cron` plugin, gated by a new `scheduler-uses-host-cron` trigger that the `docker-local` scheduler answers true while self-managed schedulers such as `k3s` answer false. This lets any host-cron scheduler participate in normal `app.json` cron without coupling to `scheduler-docker-local` or duplicating the crontab writer, while the `k3s` scheduler continues to manage its own in-cluster cron jobs.

Closes #8862.
This commit is contained in:
Jose Diaz-Gonzalez
2026-07-22 07:56:33 -04:00
parent e3687a62ed
commit c6b4ea75c1
24 changed files with 441 additions and 259 deletions

View File

@@ -44,9 +44,16 @@ func main() {
case "post-delete":
appName := flag.Arg(0)
err = cron.TriggerPostDelete(appName)
case "post-deploy":
appName := flag.Arg(0)
err = cron.TriggerPostDeploy(appName)
case "report":
appName := flag.Arg(0)
err = cron.ReportSingleApp(appName, "", "")
case "scheduler-cron-write":
scheduler := flag.Arg(0)
appName := flag.Arg(1)
err = cron.TriggerSchedulerCronWrite(scheduler, appName)
case "scheduler-stop":
scheduler := flag.Arg(0)
appName := flag.Arg(1)