1 # vi: encoding=utf-8 ts=8 sts=4 sw=4 et
9 from config import config
11 def unpackaged_files(b):
12 msg = "warning: Installed (but unpackaged) file(s) found:\n"
16 for l in f.xreadlines():
21 if l[0] != ' ' and l[0] != '\t':
27 def add_tld_builder_info(b):
28 l = open(b.logfile, "a")
29 l.write("Begin-TLD-Builder-Info\n")
30 l.write("Build-Time: %s\n\n" % b.build_time)
33 l.write("Files queued for ftp:\n%s\n" % st)
35 l.writelines(unpackaged_files(b))
36 l.write("End-TLD-Builder-Info\n")
38 def info_from_log(b, target):
39 beg = "Begin-TLD-Builder-Info\n"
40 end = "End-TLD-Builder-Info\n"
44 for l in f.xreadlines():
48 target.write("\n--- %s:%s:\n" % (b.spec, b.branch))
56 def send_report(r, is_src = False):
57 s_failed = ' '.join([b.spec for b in r.batches if b.build_failed])
58 s_ok = ' '.join([b.spec for b in r.batches if not b.build_failed])
59 upgrades_status = [b.upgraded for b in r.batches]
61 if s_failed: s_failed = "ERRORS: %s" % s_failed
62 if s_ok: s_ok = "OK: %s" % s_ok
66 if 'test-build' in r.flags:
67 subject = 'TEST build '
69 if not is_src and 'upgrade' in r.flags and False in upgrades_status:
70 subject = 'upgrade failed '
72 subject += ' '.join((s_failed, s_ok)).strip()
76 m.write("Request by: %s\n\n" % r.requester_email)
78 if b.build_failed and b.logfile == None:
84 m.write("%s (%s): %s\n" % (b.spec, b.branch, info))
91 if (b.is_command () or b.build_failed) and b.logfile != None:
92 m.write("\n\n*** buildlog for %s\n" % b.spec)
93 m.append_log(b.logfile)
96 m.set_headers(to = r.requester_email,
97 subject = subject[0:100])
99 m.set_header("Message-ID", "<req-%s@tld.src.builder>" % r.id)
101 m.set_header("References", "<req-%s@tld.src.builder>" % r.id)
102 m.set_header("In-Reply-To", "<req-%s@tld.src.builder>" % r.id)
105 m.remove_header("To")
106 m.remove_header("Cc")
107 m.set_header("To", config.builder_list)
111 m.set_header("Message-ID", "<%s@tld.src.builder>" % r.id)
113 m.set_header("References", "<%s@tld.src.builder>" % r.id)
114 m.set_header("In-Reply-To", "<%s@tld.src.builder>" % r.id)
117 def send_cia_report(r, is_src = False):
119 subject = 'DeliverXML'
122 if (len(config.bot_email) == 0):
125 m.set_headers(to = config.bot_email,
127 m.set_header("Message-ID", "<%s@tld.src.builder>" % r.id)
128 m.set_header("X-mailer", "$Id$")
129 m.set_header("X-builder", "TLD")
131 # get header of xml message from file
132 f = open(path.root_dir + '/TLD_Builder/cia-head.xml')
136 # write in iteration list and status of all processed files
138 m.write('<package name="%s" arch="%s">\n' % (b.spec, b.branch))
140 m.write('<failed/>\n')
142 m.write('<success/>\n')
143 m.write('</package>\n')
145 # get footer of xml message from file
146 f = open(path.root_dir + '/TLD_Builder/cia-foot.xml')