From 8835fb486d1a12821b8e9165b50eaa2eac0ddf89 Mon Sep 17 00:00:00 2001 From: 2Shirt <2xShirt@gmail.com> Date: Wed, 13 Mar 2019 23:01:32 -0600 Subject: [PATCH] Include ticket ID and name in osTicket posts * Fixes issue #58 --- .bin/Scripts/functions/hw_diags.py | 6 ++++-- .bin/Scripts/functions/osticket.py | 7 ++++--- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/.bin/Scripts/functions/hw_diags.py b/.bin/Scripts/functions/hw_diags.py index 79607b03..b1a2a79a 100644 --- a/.bin/Scripts/functions/hw_diags.py +++ b/.bin/Scripts/functions/hw_diags.py @@ -1044,7 +1044,8 @@ def run_hw_tests(state): v['Objects'][-1].update_status('N/A') if k == TESTS_CPU[-1]: # Last CPU test run, post CPU results - state.ost.post_device_results(state.cpu, state.ticket_id) + state.ost.post_device_results( + state.cpu, state.ticket_id, state.ticket_name) # Recheck attributes if state.tests['NVMe / SMART']['Enabled']: for test_obj in state.tests['NVMe / SMART']['Objects']: @@ -1077,7 +1078,8 @@ def run_hw_tests(state): if _disk_tests_enabled and state.disks and not state.ost.disabled: print_standard('Posting results to osTicket...') for disk in state.disks: - state.ost.post_device_results(disk, state.ticket_id) + state.ost.post_device_results( + disk, state.ticket_id, state.ticket_name) # Check if disk checkbox needs updating all_disks_passed = True diff --git a/.bin/Scripts/functions/osticket.py b/.bin/Scripts/functions/osticket.py index eadb077a..78acdd64 100644 --- a/.bin/Scripts/functions/osticket.py +++ b/.bin/Scripts/functions/osticket.py @@ -187,12 +187,13 @@ class osTicket(): pass self.tunnel_proc = None - def generate_report(self, dev, ticket_id): + def generate_report(self, dev, ticket_id, ticket_name): """Generate device report for osTicket, returns list.""" report = [] results = self.get_device_overall_results(dev) # Header + report.append('[Report for ticket #{} {}]'.format(ticket_id, ticket_name)) if results['Full Diag']: report.append( '{Dev Type} hardware diagnostic tests: {Status}'.format(**results)) @@ -463,12 +464,12 @@ class osTicket(): self.disconnect() return (ticket_number, ticket_name) - def post_device_results(self, dev, ticket_id): + def post_device_results(self, dev, ticket_id, ticket_name): """Generate osTicket friendly report and post as response to ticket.""" if not dev.tests: # No test results available, aborting post return - response = self.generate_report(dev, ticket_id) + response = self.generate_report(dev, ticket_id, ticket_name) self.post_response(response, ticket_id) def post_response(self, response, ticket_id):