diff options
Diffstat (limited to 'desktop-cronish')
-rwxr-xr-x | desktop-cronish | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/desktop-cronish b/desktop-cronish index d6d84e2..eb34c6e 100755 --- a/desktop-cronish +++ b/desktop-cronish @@ -76,12 +76,20 @@ class DesktopCronish(cliapp.Application): next_job_name = None next_when = 0 for job_name, job in self.jobs.items(): + if 'interval' in job: + job_when = self.when_interval_job(job_name, job) + else: + raise cliapp.AppException( + 'Unknown job trigger for %s' % job_name) job_when = self.previously.get(job_name, 0) + job['interval'] if next_job_name is None or job_when <= next_when: next_job_name = job_name next_when = job_when return next_job_name, next_when + def when_interval_job(self, job_name, job): + return self.previously.get(job_name, 0) + job['interval'] + def wait_until(self, when, for_what): while self.now() < when: seconds = when - self.now() |