Include ticket ID and name in osTicket posts

* Fixes issue #58
This commit is contained in:
2Shirt 2019-03-13 23:01:32 -06:00
parent c73bf2521c
commit 8835fb486d
Signed by: 2Shirt
GPG key ID: 152FAC923B0E132C
2 changed files with 8 additions and 5 deletions

View file

@ -1044,7 +1044,8 @@ def run_hw_tests(state):
v['Objects'][-1].update_status('N/A') v['Objects'][-1].update_status('N/A')
if k == TESTS_CPU[-1]: if k == TESTS_CPU[-1]:
# Last CPU test run, post CPU results # 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 # Recheck attributes
if state.tests['NVMe / SMART']['Enabled']: if state.tests['NVMe / SMART']['Enabled']:
for test_obj in state.tests['NVMe / SMART']['Objects']: 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: if _disk_tests_enabled and state.disks and not state.ost.disabled:
print_standard('Posting results to osTicket...') print_standard('Posting results to osTicket...')
for disk in state.disks: 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 # Check if disk checkbox needs updating
all_disks_passed = True all_disks_passed = True

View file

@ -187,12 +187,13 @@ class osTicket():
pass pass
self.tunnel_proc = None 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.""" """Generate device report for osTicket, returns list."""
report = [] report = []
results = self.get_device_overall_results(dev) results = self.get_device_overall_results(dev)
# Header # Header
report.append('[Report for ticket #{} {}]'.format(ticket_id, ticket_name))
if results['Full Diag']: if results['Full Diag']:
report.append( report.append(
'{Dev Type} hardware diagnostic tests: {Status}'.format(**results)) '{Dev Type} hardware diagnostic tests: {Status}'.format(**results))
@ -463,12 +464,12 @@ class osTicket():
self.disconnect() self.disconnect()
return (ticket_number, ticket_name) 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.""" """Generate osTicket friendly report and post as response to ticket."""
if not dev.tests: if not dev.tests:
# No test results available, aborting post # No test results available, aborting post
return return
response = self.generate_report(dev, ticket_id) response = self.generate_report(dev, ticket_id, ticket_name)
self.post_response(response, ticket_id) self.post_response(response, ticket_id)
def post_response(self, response, ticket_id): def post_response(self, response, ticket_id):