[Pkg-debile-commits] [debile-master] 44/126: update
Sylvestre Ledru
sylvestre at alioth.debian.org
Mon Aug 19 14:56:12 UTC 2013
This is an automated email from the git hooks/post-receive script.
sylvestre pushed a commit to branch scan-build-html
in repository debile-master.
commit 409d1baf5af43dbe1916fdea58501a71110b671c
Author: Paul Tagliamonte <tag at pault.ag>
Date: Wed May 29 22:41:32 2013 -0400
update
---
lucy/models/job.py | 14 +++++++++++++-
scripts/lucy-janitor | 25 +++++++++++++++++++++++++
2 files changed, 38 insertions(+), 1 deletion(-)
diff --git a/lucy/models/job.py b/lucy/models/job.py
index 419a6b4..3261604 100644
--- a/lucy/models/job.py
+++ b/lucy/models/job.py
@@ -1,5 +1,7 @@
-from lucy.models import LucyObject
+import datetime as dt
+
from lucy.models.machine import Machine
+from lucy.models import LucyObject
class Job(LucyObject):
@@ -73,6 +75,16 @@ class Job(LucyObject):
return v
@classmethod
+ def dead_jobs(cls, howlong, **kwargs):
+ cutoff = dt.datetime.utcnow() - howlong
+ for x in cls.unfinished_jobs(**{
+ "assigned_at": {"$lt": cutoff},
+ "builder": {"$ne": None},
+ "finished_at": None
+ }):
+ yield x
+
+ @classmethod
def unfinished_jobs(cls, **kwargs):
k = kwargs.copy()
k.update({"finished_at": None})
diff --git a/scripts/lucy-janitor b/scripts/lucy-janitor
new file mode 100755
index 0000000..ba4080a
--- /dev/null
+++ b/scripts/lucy-janitor
@@ -0,0 +1,25 @@
+#!/usr/bin/env python
+
+from lucy.models.job import Job
+
+import datetime as dt
+import schedule
+import time
+
+
+def job():
+ length = dt.timedelta(hours=2)
+ jobs = Job.dead_jobs(length)
+ for job in jobs:
+ job['builder'] = None
+ job['assigned_at'] = None
+ job.save()
+ print("Pushing %s back into the pool" % (job['_id']))
+
+
+schedule.every(5).minutes.do(job)
+
+
+while True:
+ schedule.run_pending()
+ time.sleep(1)
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-debile/debile-master.git
More information about the Pkg-debile-commits
mailing list