diff options
Diffstat (limited to 'classes/tinderclient.bbclass')
-rw-r--r-- | classes/tinderclient.bbclass | 40 |
1 files changed, 30 insertions, 10 deletions
diff --git a/classes/tinderclient.bbclass b/classes/tinderclient.bbclass index 5de9b8755a..5b55589ec0 100644 --- a/classes/tinderclient.bbclass +++ b/classes/tinderclient.bbclass @@ -1,6 +1,26 @@ -def tinder_tinder_time(): - import time - return time.strftime('%m/%d/%Y %H:%M:%S', time.localtime()) +def tinder_tz_offset(off): + # get the offset. Either it is a number like + # +200 or -300 + try: + return int(off) + except ValueError: + if off == "Europe/Berlin": + return 200 + else: + return 0 + +def tinder_tinder_time(offset): + import datetime + td = datetime.timedelta(tinder_tz_offset(offset)) + time = datetime.datetime.utcnow() + td + return time.strftime('%m/%d/%Y %H:%M:%S') + +def tinder_tinder_start(date,offset): + import datetime, time + td = datetime.timedelta(tinder_tz_offset(offset)) + ti = time.strptime(date, "%m/%d/%Y %H:%M:%S") + ti = datetime.datetime(*ti[0:7])-td + return time.strftime('%m/%d/%Y %H:%M:%S') def tinder_send_email(da, header, log): import smtplib @@ -21,8 +41,8 @@ def tinder_send_http(da, header, log): from bb import data import httplib, urllib cont = "\n%s\n%s" % ( header, log) - headers = {"Content-type": "multipart/form-data" } - + headers = {"Content-type": "multipart/form-data" } + conn = httplib.HTTPConnection(data.getVar('TINDER_HOST',da, True)) conn.request("POST", data.getVar('TINDER_URL',da,True), cont, headers) conn.close() @@ -33,11 +53,11 @@ def tinder_prepare_mail_header(da, status): from bb import data str = "tinderbox: administrator: %s\n" % data.getVar('TINDER_ADMIN', da, True) - str += "tinderbox: starttime: %s\n" % data.getVar('BUILDSTART', da, True) or data.getVar('TINDER_START', da, True) + str += "tinderbox: starttime: %s\n" % tinder_tinder_start(data.getVar('TINDER_START', da, True) or data.getVar('BUILDSTART', da, True), data.getVar('TINDER_TZ', da, True)) str += "tinderbox: buildname: %s\n" % data.getVar('TINDER_BUILD', da, True) str += "tinderbox: errorparser: %s\n" % data.getVar('TINDER_ERROR', da, True) str += "tinderbox: status: %s\n" % status - str += "tinderbox: timenow: %s\n" % tinder_tinder_time() + str += "tinderbox: timenow: %s\n" % tinder_tinder_time(data.getVar('TINDER_TZ', da, True)) str += "tinderbox: tree: %s\n" % data.getVar('TINDER_TREE', da, True) str += "tinderbox: buildfamily: %s\n" % "unix" str += "tinderbox: END" @@ -76,8 +96,8 @@ def tinder_do_tinder_report(event): if name == "PkgFailed" or name == "BuildCompleted": status = 'build_failed' - if name == "BuildCompleted": - status = "success" + if name == "BuildCompleted": + status = "success" header = tinder_prepare_mail_header(event.data, status) # append the log log_file = data.getVar('TINDER_LOG', event.data, True) @@ -120,7 +140,7 @@ def tinder_do_tinder_report(event): log_post_method = tinder_send_email if data.getVar('TINDER_SENDLOG', event.data, True) == "http": - log_post_method = tinder_send_http + log_post_method = tinder_send_http log_post_method(event.data, header, log) |