]> TLD Linux GIT Repositories - tld-builder.git/blobdiff - TLD_Builder/request_handler.py
- more python 3.x fixes
[tld-builder.git] / TLD_Builder / request_handler.py
index 033cf39d8760b4c605db7a478a04be9beaedbd4e..b6c67a57f3b6d7802b9e5ad01d1cb7cb1015187f 100644 (file)
@@ -4,8 +4,11 @@ import email
 import string
 import time
 import os
-import StringIO
 import sys
+if sys.version_info[0] == 2:
+    import StringIO
+else:
+    from io import StringIO
 import fnmatch
 
 import gpg
@@ -21,12 +24,13 @@ from lock import lock
 from bqueue import B_Queue
 from config import config, init_conf
 from mailer import Message
+#import messagebus
 
 def check_double_id(id):
     id_nl = id + "\n"
 
     ids = open(path.processed_ids_file)
-    for i in ids.xreadlines():
+    for i in ids:
         if i == id_nl:
             # FIXME: security email here?
             log.alert("request %s already processed" % id)
@@ -100,7 +104,7 @@ def handle_group(r, user):
             batch.builders_status_time[bld] = time.time()
             if bld not in config.binary_builders and bld != config.builder:
                 fail_mail("I (src rpm builder '%s') do not handle binary builder '%s', only '%s'" % \
-                        (config.builder, bld, string.join(config.binary_builders)))
+                        (config.builder, bld, config.binary_builders.join()))
                 lockf.close()
                 return
             if batch.is_command():
@@ -155,7 +159,7 @@ def handle_notification(r, user):
     q = B_Queue(path.req_queue_file)
     q.lock(0)
     q.read()
-    not_fin = filter(lambda (r): not r.is_done(), q.requests)
+    not_fin = list(filter(lambda r: not r.is_done(), q.requests))
     r.apply_to(q)
     for r in not_fin:
         if r.is_done():
@@ -170,7 +174,7 @@ def handle_notification(r, user):
             util.clean_tmp(path.srpms_dir + '/' + r.id)
             return False
         return True
-    q.requests = filter(leave_it, q.requests)
+    q.requests = list(filter(leave_it, q.requests))
     q.write()
     q.dump(path.queue_stats_file)
     q.dump_html(path.queue_html_stats_file)
@@ -197,8 +201,10 @@ def handle_request(req, filename = None):
     status.push("request from %s" % user.login)
     r = request.parse_request(body)
     if r.kind == 'group':
+#        messagebus.notify(topic="request.group", user=user.login, **r.dump_json())
         handle_group(r, user)
     elif r.kind == 'notification':
+#        messagebus.notify(topic="request.notify", user=user.login, **r.dump_json())
         handle_notification(r, user)
     else:
         msg = "%s: don't know how to handle requests of this kind '%s'" \