From e6bdd7fe47d13eef7deba18e095fca1beedd3f1d Mon Sep 17 00:00:00 2001 From: Spencer Krum Date: Sun, 28 Dec 2014 14:27:23 -0800 Subject: [PATCH 1/4] Add testsnot support to ticket history --- snotparser.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/snotparser.py b/snotparser.py index 8dcfca6..a8b60dc 100755 --- a/snotparser.py +++ b/snotparser.py @@ -130,10 +130,14 @@ def formatTicketSmart(number, formatString, command='snot'): return str(number) + ": No ticket found" -def getTicketHistory(number): +def getTicketHistory(number, snot_cmd): try: number = int(number) - process = subprocess.Popen(['grep', "TKT: %d" % number, "/u/snot/logs/log"], stdout=subprocess.PIPE, stderr=subprocess.STDOUT) + if snot_cmd == 'testsnot': + snot_log = '/u/snot/test/logs/log' + else: + snot_cmd = '/u/snot/logs/log' + process = subprocess.Popen(['grep', "TKT: %d" % number, snot_log], stdout=subprocess.PIPE, stderr=subprocess.STDOUT) return process.stdout.readlines() except ValueError as e: return str(e) @@ -144,4 +148,5 @@ def getTicketHistory(number): import os snot_cmd = os.environ.get('SNOT_CMD', 'snot') ticket_num = sys.argv[1] - print ticket_num, parseTicket(ticket_num, snot_cmd) + #print ticket_num, parseTicket(ticket_num, snot_cmd) + print ticket_num, getTicketHistory(ticket_num, snot_cmd) From df68fa1bc67e2734e4b8f9f8631320106b34c588 Mon Sep 17 00:00:00 2001 From: Spencer Krum Date: Sun, 28 Dec 2014 15:45:48 -0800 Subject: [PATCH 2/4] add cc_line and to_line to go with from_line --- snotparser.py | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/snotparser.py b/snotparser.py index a8b60dc..dd24fba 100755 --- a/snotparser.py +++ b/snotparser.py @@ -52,6 +52,20 @@ def parseTicket(number, command='snot'): ticketDictionary["from_line"] = match.group("from_line") break + #print "Searching for To field" + for line in rawTicket[0:bodyStartLine]: + match = re.match(r"^To:\s*(?P.*)$", line) + if match: + ticketDictionary["to_line"] = match.group("to_line") + break + + #print "Searching for cc field" + for line in rawTicket[0:bodyStartLine]: + match = re.match(r"^Cc:\s*(?P.*)$", line) + if match: + ticketDictionary["cc_line"] = match.group("cc_line") + break + for line in rawTicket[administrativeStartLine:]: kvMatch = re.match("^(?P.+?):\s+(?P.*)$", line) if kvMatch: @@ -148,5 +162,5 @@ def getTicketHistory(number, snot_cmd): import os snot_cmd = os.environ.get('SNOT_CMD', 'snot') ticket_num = sys.argv[1] - #print ticket_num, parseTicket(ticket_num, snot_cmd) - print ticket_num, getTicketHistory(ticket_num, snot_cmd) + print ticket_num, parseTicket(ticket_num, snot_cmd) + #print ticket_num, getTicketHistory(ticket_num, snot_cmd) From de66fceaa4273d167a63fb3259141b78fca65452 Mon Sep 17 00:00:00 2001 From: Spencer Krum Date: Tue, 30 Dec 2014 20:07:46 -0800 Subject: [PATCH 3/4] Adding boogerd-uuid sensing --- snotparser.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/snotparser.py b/snotparser.py index dd24fba..0acd5ab 100755 --- a/snotparser.py +++ b/snotparser.py @@ -66,6 +66,13 @@ def parseTicket(number, command='snot'): ticketDictionary["cc_line"] = match.group("cc_line") break + #print "Searching for X-Boogerd-UUID field" + for line in rawTicket[0:bodyStartLine]: + match = re.match(r"^key: X-Boogerd-UUID:\s*(?P.*)$", line) + if match: + ticketDictionary["boogerd_uuid"] = match.group("boogerd_uuid_line") + break + for line in rawTicket[administrativeStartLine:]: kvMatch = re.match("^(?P.+?):\s+(?P.*)$", line) if kvMatch: From 3a4aea9615cc94e218cad622fcc535779c43142e Mon Sep 17 00:00:00 2001 From: Spencer Krum Date: Wed, 31 Dec 2014 12:35:03 -0800 Subject: [PATCH 4/4] Undo workaround for boogerd header issue --- snotparser.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/snotparser.py b/snotparser.py index 0acd5ab..a5720cc 100755 --- a/snotparser.py +++ b/snotparser.py @@ -68,7 +68,7 @@ def parseTicket(number, command='snot'): #print "Searching for X-Boogerd-UUID field" for line in rawTicket[0:bodyStartLine]: - match = re.match(r"^key: X-Boogerd-UUID:\s*(?P.*)$", line) + match = re.match(r"^X-Boogerd-UUID:\s*(?P.*)$", line) if match: ticketDictionary["boogerd_uuid"] = match.group("boogerd_uuid_line") break