X-Git-Url: https://git.tld-linux.org/?a=blobdiff_plain;f=TLD_Builder%2Fsrpm_builder.py;h=11f793b27494c7945f641c303401990f44507878;hb=d398d662985299e8548fda37f75fc8b0ffe7a10f;hp=56641c516c448b8fbc010e7961e45dc398f6a454;hpb=0ef55388426231b041e5c1d8f03274ca78cf8eaa;p=tld-builder.git diff --git a/TLD_Builder/srpm_builder.py b/TLD_Builder/srpm_builder.py index 56641c5..11f793b 100644 --- a/TLD_Builder/srpm_builder.py +++ b/TLD_Builder/srpm_builder.py @@ -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 re import shutil import atexit @@ -24,6 +27,7 @@ import notify import status import build import report +#import messagebus from lock import lock from bqueue import B_Queue @@ -32,13 +36,13 @@ from config import config, init_conf def pick_request(q): def mycmp(r1, r2): if r1.kind != 'group' or r2.kind != 'group': - raise Exception, "non-group requests" + raise Exception("non-group requests") pri_diff = cmp(r1.priority, r2.priority) if pri_diff == 0: return cmp(r1.time, r2.time) else: return pri_diff - q.requests.sort(mycmp) + q.requests.sort(key=util.cmp_to_key(mycmp)) ret = q.requests[0] q.requests = q.requests[1:] return ret @@ -51,7 +55,7 @@ def store_binary_request(r): return r.batches = new_b # store new queue and max_req_no for binary builders - num = int(string.strip(open(path.max_req_no_file, "r").read())) + 1 + num = int(open(path.max_req_no_file, "r").read().strip()) + 1 r.no = num q = B_Queue(path.req_queue_file) @@ -71,7 +75,7 @@ def store_binary_request(r): cnt_f.flush() os.fsync(cnt_f.fileno()) cnt_f.close() - os.chmod(tmpfname, 0644) + os.chmod(tmpfname, 0o0644) os.rename(tmpfname, path.max_req_no_file) def transfer_file(r, b): @@ -79,7 +83,7 @@ def transfer_file(r, b): f = b.src_rpm_file # export files from chroot chroot.cp(f, outfile = local, rm = True) - os.chmod(local, 0644) + os.chmod(local, 0o0644) ftp.add(local) if config.gen_upinfo and 'test-build' not in r.flags: @@ -96,6 +100,7 @@ def build_srpm(r, b): return "FAIL" status.push("building %s" % b.spec) +# messagebus.notify(topic="build_srpm.start", spec=b.spec, flags=r.flags, batch=b, request=r) b.src_rpm = "" builder_opts = "-nu -nm --nodeps --http --define \'_tld_builder 1\'" @@ -120,10 +125,9 @@ def build_srpm(r, b): util.append_to(b.logfile, "error: No files produced.") res = "FAIL" if res == 0 and not "test-build" in r.flags: - for pref in config.tag_prefixes: - util.append_to(b.logfile, "Tagging with prefix: %s" % pref) - res = chroot.run("cd rpm/packages; ./builder -bs %s -r %s -Tp %s -Tv --pkgrev %s %s" % \ - (b.bconds_string(), b.branch, pref, b.defines_string(), b.spec), logfile = b.logfile) + util.append_to(b.logfile, "Writing package revision") + res = chroot.run("cd rpm/packages; ./builder -bs %s -r %s --pkgrev %s %s" % \ + (b.bconds_string(), b.branch, b.defines_string(), b.spec), logfile = b.logfile) if res == 0: transfer_file(r, b) @@ -136,11 +140,13 @@ def build_srpm(r, b): if res: res = "FAIL" + +# messagebus.notify(topic="build_srpm.finish", spec=b.spec) return res def handle_request(r): os.mkdir(path.srpms_dir + '/' + r.id) - os.chmod(path.srpms_dir + '/' + r.id, 0755) + os.chmod(path.srpms_dir + '/' + r.id, 0o0755) ftp.init(r) buildlogs.init(r) build.build_all(r, build_srpm)