X-Git-Url: https://git.tld-linux.org/?a=blobdiff_plain;f=TLD_Builder%2Ffile_sender.py;h=056045826204a5a0a3646a98bb4d184187343a57;hb=d5c47ccb4a425d1b982888101273651b2d4db38d;hp=d09affb0e5d2adaba4558bdb663af15eca945dc7;hpb=92949e17161a53bfb4a60099e22b58ad63abce4c;p=tld-builder.git diff --git a/TLD_Builder/file_sender.py b/TLD_Builder/file_sender.py index d09affb..0560458 100644 --- a/TLD_Builder/file_sender.py +++ b/TLD_Builder/file_sender.py @@ -8,8 +8,7 @@ import time import shutil import sys import traceback -import urllib2 - +import urllib from config import config, init_conf import mailer import path @@ -17,6 +16,7 @@ import log import loop import status import lock +import util retries_times = [5 * 60, 5 * 60, 10 * 60, 10 * 60, 30 * 60, 60 * 60] @@ -30,7 +30,7 @@ def read_name_val(file): return r m = rx.search(l) if m: - r[m.group(1)] = string.strip(m.group(2)) + r[m.group(1)] = m.group(2).strip() else: break f.close() @@ -61,7 +61,7 @@ def rsync_file(src, target, host): p = open(path.rsync_password_file, "r") password = "" for l in p: - l = string.split(l) + l = l.split() if len(l) >= 2 and l[0] == host: password = l[1] p.close() @@ -93,11 +93,11 @@ def post_file(src, url): global problems try: f = open(src, 'r') - data = f.read() + data = f.read().encode('utf-8') f.close() - req = urllib2.Request(url, data) - req.add_header('X-Filename', os.path.basename(src)) - f = urllib2.urlopen(req) + headers = { 'X-Filename' : os.path.basename(src) } + req = urllib.request.Request(url, data=data, headers=headers) + f = urllib.request.urlopen(req) f.close() except Exception as e: problems[src] = e @@ -133,8 +133,8 @@ def maybe_flush_queue(dir): retry_delay = 0 try: f = open(dir + "/retry-at") - last_retry = int(string.strip(f.readline())) - retry_delay = int(string.strip(f.readline())) + last_retry = int(f.readline().strip()) + retry_delay = int(f.readline().strip()) f.close() if last_retry + retry_delay > time.time(): return @@ -164,11 +164,11 @@ def flush_queue(dir): if d != None: q.append(d) def mycmp(x, y): rc = cmp(x['Time'], y['Time']) - if rc == 0 and x.has_key('Type') and y.has_key('Type'): + if rc == 0 and 'Type' in x and 'Type' in y: return cmp(x['Type'], y['Type']) else: return rc - q.sort(mycmp) + q.sort(key=util.cmp_to_key(mycmp)) error = None # copy of q @@ -193,11 +193,11 @@ def flush_queue(dir): for src, msg in problems.items(): pr = pr + "[src: %s]\n\n%s\n" % (src, msg) for d in remaining: - if d.has_key('Requester'): + if 'Requester' in d: emails[d['Requester']] = 1 e = emails.keys() m = mailer.Message() - m.set_headers(to = string.join(e, ", "), + m.set_headers(to = ", ".join(e), subject = "[%s] builder queue problem" % config.builder) m.write("there were problems sending files from queue %s:\n" % dir) m.write("problems:\n")