Fix drive report for aborted tests

This commit is contained in:
2Shirt 2018-10-03 23:30:21 -06:00
parent 117a47e94c
commit e56647ed48

View file

@ -539,6 +539,8 @@ def post_drive_results(ticket_number):
report.append('Drive hardware diagnostics tests: UNKNOWN') report.append('Drive hardware diagnostics tests: UNKNOWN')
elif dev_passed: elif dev_passed:
report.append('Drive hardware diagnostics tests: Passed') report.append('Drive hardware diagnostics tests: Passed')
else:
report.append('Drive hardware diagnostics tests: INCOMPLETE')
report.append('') report.append('')
# Drive description # Drive description
@ -601,7 +603,7 @@ def post_drive_results(ticket_number):
# badblocks # badblocks
bb_status = TESTS['badblocks']['Status'].get(name, None) bb_status = TESTS['badblocks']['Status'].get(name, None)
if TESTS['badblocks']['Enabled'] and bb_status not in ['Denied', 'Skipped']: if TESTS['badblocks']['Enabled'] and bb_status not in ['Denied', 'Skipped', 'Aborted']:
report.append('badblocks ({}):'.format( report.append('badblocks ({}):'.format(
TESTS['badblocks']['Status'][name])) TESTS['badblocks']['Status'][name]))
bb_result = TESTS['badblocks']['Results'].get( bb_result = TESTS['badblocks']['Results'].get(
@ -622,7 +624,7 @@ def post_drive_results(ticket_number):
# I/O Benchmark # I/O Benchmark
io_status = TESTS['iobenchmark']['Status'].get(name, None) io_status = TESTS['iobenchmark']['Status'].get(name, None)
if TESTS['iobenchmark']['Enabled'] and io_status not in ['Denied', 'ERROR', 'Skipped']: if TESTS['iobenchmark']['Enabled'] and io_status not in ['Denied', 'ERROR', 'Skipped', 'Aborted']:
one_line_graph = generate_horizontal_graph( one_line_graph = generate_horizontal_graph(
rates=TESTS['iobenchmark']['Data'][name]['Merged Rates'], rates=TESTS['iobenchmark']['Data'][name]['Merged Rates'],
oneline=True) oneline=True)
@ -659,7 +661,7 @@ def post_drive_results(ticket_number):
# Used space # Used space
report.append('') report.append('')
report.append('Volumes:') report.append('Volumes:')
if dev_failed: if dev_failed or dev_unknown:
report.append('Skipped due to error(s) above.') report.append('Skipped due to error(s) above.')
else: else:
volume_report = mount_volumes( volume_report = mount_volumes(
@ -1087,6 +1089,11 @@ def run_mprime(ticket_number):
if aborted: if aborted:
if TESTS['NVMe/SMART']['Enabled'] or TESTS['badblocks']['Enabled']: if TESTS['NVMe/SMART']['Enabled'] or TESTS['badblocks']['Enabled']:
if not ask('Proceed to next test?'): if not ask('Proceed to next test?'):
for name in TESTS['NVMe/SMART']['Devices'].keys():
for t in ['NVMe/SMART', 'badblocks', 'iobenchmark']:
cur_status = TESTS[t]['Status'][name]
if cur_status not in ['CS', 'Denied', 'NS']:
TESTS[t]['Status'][name] = 'Aborted'
run_program('tmux kill-pane -a'.split()) run_program('tmux kill-pane -a'.split())
raise GenericError raise GenericError