Remove unused RemoveAllJobs function and update backup scheduling logic

This commit is contained in:
Luis Eduardo Jeréz Girón
2024-07-21 22:40:22 -06:00
parent 7e2ceab458
commit 7b8869c49e
3 changed files with 12 additions and 20 deletions
-12
View File
@@ -61,18 +61,6 @@ func (c *Cron) RemoveJob(id uuid.UUID) error {
return nil
}
// RemoveAllJobs removes all jobs from the scheduler.
func (c *Cron) RemoveAllJobs() error {
jobs := c.scheduler.Jobs()
for _, job := range jobs {
if err := c.RemoveJob(job.ID()); err != nil {
return err
}
}
return nil
}
// Start starts the scheduler.
func (c *Cron) Start() {
c.scheduler.Start()
+12 -7
View File
@@ -14,14 +14,19 @@ func (s *Service) ScheduleAll() error {
return err
}
if err := s.cr.RemoveAllJobs(); err != nil {
return err
}
for _, backup := range activeBackups {
err := s.jobUpsert(backup.ID, backup.TimeZone, backup.CronExpression)
if err != nil {
return err
if !backup.IsActive {
err := s.jobRemove(backup.ID)
if err != nil {
return err
}
}
if backup.IsActive {
err := s.jobUpsert(backup.ID, backup.TimeZone, backup.CronExpression)
if err != nil {
return err
}
}
}
@@ -5,5 +5,4 @@ SELECT
cron_expression,
time_zone
FROM backups
WHERE is_active = TRUE
ORDER BY created_at DESC;