This means that you don't have to deal with tars for quickly determining
the cause of a failure.
Signed-off-by: Garming Sam <garming@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Tue Mar 22 11:39:38 CET 2016 on sn-devel-144
s.quit()
def email_failure(status, failed_task, failed_stage, failed_tag, errstr,
s.quit()
def email_failure(status, failed_task, failed_stage, failed_tag, errstr,
- elapsed_time, log_base=None):
+ elapsed_time, log_base=None, add_log_tail=True):
'''send an email to options.email about the failure'''
elapsed_minutes = elapsed_time / 60.0
user = os.getenv("USER")
'''send an email to options.email about the failure'''
elapsed_minutes = elapsed_time / 60.0
user = os.getenv("USER")
''' % (log_base, failed_tag, log_base, failed_tag, log_base, top_commit_msg)
''' % (log_base, failed_tag, log_base, failed_tag, log_base, top_commit_msg)
+ if add_log_tail:
+ f = open("%s/%s.stdout" % (log_base, failed_tag), 'r')
+ log_tail = "".join(f.readlines()[-50:])
+
+ text += '''
+The last 50 lines of log messages:
+
+%s
+ ''' % log_tail
+ f.close()
+
logs = os.path.join(gitroot, 'logs.tar.gz')
send_email('autobuild failure on %s for task %s during %s'
% (platform.node(), failed_task, failed_stage),
logs = os.path.join(gitroot, 'logs.tar.gz')
send_email('autobuild failure on %s for task %s during %s'
% (platform.node(), failed_task, failed_stage),