X-Git-Url: https://git.tld-linux.org/?p=TLD.git;a=blobdiff_plain;f=pld-builder.new%2FPLD_Builder%2Fnotifyq.py;fp=pld-builder.new%2FPLD_Builder%2Fnotifyq.py;h=d7bea90f1fc0cdf5247cb25cb11e514fa9a2ca8d;hp=0000000000000000000000000000000000000000;hb=90809c8fec988489786ce00247d9a4150070748b;hpb=ab3934fab858112cd552359b18cb980ea07c310b diff --git a/pld-builder.new/PLD_Builder/notifyq.py b/pld-builder.new/PLD_Builder/notifyq.py new file mode 100644 index 0000000..d7bea90 --- /dev/null +++ b/pld-builder.new/PLD_Builder/notifyq.py @@ -0,0 +1,65 @@ +# vi: encoding=utf-8 ts=8 sts=4 sw=4 et + +import path +import os +import shutil +import time + +from config import config +import util + +class Notify_Queue: + def __init__(self): + self.queue = None + self.some_failed = 0 + + def init(self, g=None): + self.queue = [] + self.requester_email = g.requester_email + self.notify_url = config.notify_url + + def add(self, file): + id = util.uuid() + f = open(path.notify_queue_dir + '/' + id, 'w') + f.write(file.read()) + f.close() + self.queue.append({'id': id}) + + def flush(self): + def desc(l): + return """Target: %s +Id: %s +Builder: %s +Time: %d +Requester: %s +END +""" % (self.notify_url, l['id'], config.builder, time.time(), self.requester_email) + + for l in self.queue: + f = open(path.notify_queue_dir + '/' + l['id'] + ".desc", "w") + f.write(desc(l)) + f.close() + + def kill(self): + for l in self.queue: + os.unlink(path.notify_queue_dir + '/' + l) + +queue = Notify_Queue() + +def add(notify): + queue.add(notify) + +def flush(): + queue.flush() + +def kill(): + queue.kill() + +def init(r): + queue.init(r) + +def status(): + return queue.status + +def clear_status(): + queue.status = ""