diff --git a/foundation-core/src/main/kotlin/cloud/kubelet/foundation/core/features/backup/BackupFeature.kt b/foundation-core/src/main/kotlin/cloud/kubelet/foundation/core/features/backup/BackupFeature.kt index 14f1f87..35e56db 100644 --- a/foundation-core/src/main/kotlin/cloud/kubelet/foundation/core/features/backup/BackupFeature.kt +++ b/foundation-core/src/main/kotlin/cloud/kubelet/foundation/core/features/backup/BackupFeature.kt @@ -29,7 +29,9 @@ class BackupFeature : Feature() { registerCommandExecutor("fbackup", BackupCommand(plugin, backupPath, config, s3Client)) if (config.schedule.cron.isNotEmpty()) { - scheduleId = scheduler.cron("${config.schedule.cron} ?") { + // Assume user never wants to modify second. I'm not sure why this is enforced in Quartz. + val expr = "0 ${config.schedule.cron}" + scheduleId = scheduler.cron(expr) { plugin.server.scheduler.runTask(plugin) { -> plugin.server.dispatchCommand(plugin.server.consoleSender, "fbackup") } diff --git a/foundation-core/src/main/resources/backup.yaml b/foundation-core/src/main/resources/backup.yaml index fbb7591..8756981 100644 --- a/foundation-core/src/main/resources/backup.yaml +++ b/foundation-core/src/main/resources/backup.yaml @@ -1,8 +1,9 @@ # Configuration of backup scheduling, expressed by cron expressions. schedule: - # Cron expression to use for the backup schedule. + # Cron expression to use for the backup schedule. This is not standard cron, but rather a subset + # that is given to us by the Quartz Scheduler. # Examples: - # "0 3 * * *" -> every day at 3 AM + # "0 3 * * ?" -> every day at 3 AM # "0 3 * * SUN" -> every Sunday at 3 AM cron: ""