X-Git-Url: https://git.tld-linux.org/?p=TLD.git;a=blobdiff_plain;f=pld-builder.new%2FPLD_Builder%2Freport.py;fp=pld-builder.new%2FPLD_Builder%2Freport.py;h=0000000000000000000000000000000000000000;hp=a0fe7be98a2cca1872ae70532d6230fda606e060;hb=3dc53b6865f716904ad4d02e934e04b3d4855c32;hpb=b235722fd546915a60800f2660d76f684d6f1445 diff --git a/pld-builder.new/PLD_Builder/report.py b/pld-builder.new/PLD_Builder/report.py deleted file mode 100644 index a0fe7be..0000000 --- a/pld-builder.new/PLD_Builder/report.py +++ /dev/null @@ -1,139 +0,0 @@ -# vi: encoding=utf-8 ts=8 sts=4 sw=4 et - -import string -import path - -import ftp -import stopwatch -import mailer -from config import config - -def unpackaged_files(b): - msg = "warning: Installed (but unpackaged) file(s) found:\n" - f = open(b.logfile) - copy_mode = 0 - out = [] - for l in f.xreadlines(): - if l == msg: - copy_mode = 1 - out.append(l) - elif copy_mode: - if l[0] != ' ': - copy_mode = 0 - else: - out.append(l) - return out - -def add_pld_builder_info(b): - l = open(b.logfile, "a") - l.write("Begin-PLD-Builder-Info\n") - l.write("Build-Time: %s\n\n" % b.build_time) - st = ftp.status() - if st != "": - l.write("Files queued for ftp:\n%s\n" % st) - ftp.clear_status() - l.writelines(unpackaged_files(b)) - l.write("End-PLD-Builder-Info\n") - -def info_from_log(b, target): - beg = "Begin-PLD-Builder-Info\n" - end = "End-PLD-Builder-Info\n" - f = open(b.logfile) - copy_mode = 0 - need_header = 1 - for l in f.xreadlines(): - if l == beg: - if need_header: - need_header = 0 - target.write("\n--- %s:%s:\n" % (b.spec, b.branch)) - copy_mode = 1 - elif copy_mode: - if l == end: - copy_mode = 0 - else: - target.write(l) - -def send_report(r, is_src = False): - s_failed = ' '.join([b.spec for b in r.batches if b.build_failed]) - s_ok = ' '.join([b.spec for b in r.batches if not b.build_failed]) - upgrades_status = [b.upgraded for b in r.batches] - - if s_failed: s_failed = "ERRORS: %s" % s_failed - if s_ok: s_ok = "OK: %s" % s_ok - - subject = '' - - if 'test-build' in r.flags: - subject = 'TEST build ' - - if not is_src and 'upgrade' in r.flags and False in upgrades_status: - subject = 'upgrade failed ' - - subject += ' '.join((s_failed, s_ok)).strip() - - m = mailer.Message() - m.set_headers(to = r.requester_email, - cc = config.builder_list, - subject = subject[0:100]) - if is_src: - m.set_header("Message-ID", "<%s@pld.src.builder>" % r.id) - else: - m.set_header("References", "<%s@pld.src.builder>" % r.id) - m.set_header("In-Reply-To", "<%s@pld.src.builder>" % r.id) - - for b in r.batches: - if b.build_failed and b.logfile == None: - info = b.skip_reason - elif b.build_failed: - info = "FAILED" - else: - info = "OK" - m.write("%s (%s): %s\n" % (b.spec, b.branch, info)) - - for b in r.batches: - if b.logfile != None: - info_from_log(b, m) - - for b in r.batches: - if (b.is_command () or b.build_failed) and b.logfile != None: - m.write("\n\n*** buildlog for %s\n" % b.spec) - m.append_log(b.logfile) - m.write("\n\n") - - m.send() - -def send_cia_report(r, is_src = False): - - subject = 'DeliverXML' - - m = mailer.Message() - if (len(config.bot_email) == 0): - return - - m.set_headers(to = config.bot_email, - subject = subject) - m.set_header("Message-ID", "<%s@pld.src.builder>" % r.id) - m.set_header("X-mailer", "$Id$") - m.set_header("X-builder", "PLD") - - # get header of xml message from file - f = open(path.root_dir + '/PLD_Builder/cia-head.xml') - m.write(f.read()) - f.close() - - # write in iteration list and status of all processed files - for b in r.batches: - m.write('\n' % (b.spec, b.branch)) - if b.build_failed: - m.write('\n') - else: - m.write('\n') - m.write('\n') - - # get footer of xml message from file - f = open(path.root_dir + '/PLD_Builder/cia-foot.xml') - m.write(f.read()) - f.close() - - # send the e-mail - m.send()