Added connet_to_db() function to hw-diags.py

* Uses new main.py variables
* Only runs if non-quick drive test(s) are selected
This commit is contained in:
2Shirt 2018-09-18 16:14:46 -06:00
parent 73367d2cde
commit 555a661e92
Signed by: 2Shirt
GPG key ID: 152FAC923B0E132C
3 changed files with 35 additions and 4 deletions

View file

@ -2,9 +2,14 @@
import json
import time
import mysql.connector as mariadb
from functions.common import *
# osTicket Database
db_connection = None
db_cursor = None
# STATIC VARIABLES
ATTRIBUTES = {
'NVMe': {
@ -73,6 +78,17 @@ TESTS = {
},
}
def connect_to_db():
"""Connect to osTicket database."""
try:
db_connection = mariadb.connect(
user=DB_USER, password=DB_PASS, database=DB_NAME, host=DB_HOST)
db_cursor = db_connection.cursor()
except:
db_connection = None
db_cursor = None
raise
def generate_horizontal_graph(rates):
"""Generate two-line horizontal graph from rates, returns str."""
line_top = ''
@ -640,8 +656,10 @@ def run_nvme_smart():
def run_tests(tests):
"""Run selected hardware test(s)."""
print_log('Starting Hardware Diagnostics')
print_log('\nRunning tests: {}'.format(', '.join(tests)))
clear_screen()
print_standard('Starting Hardware Diagnostics')
print_standard(' ')
print_standard('Running tests: {}'.format(', '.join(tests)))
# Enable selected tests
for t in ['Prime95', 'NVMe/SMART', 'badblocks', 'iobenchmark']:
TESTS[t]['Enabled'] = t in tests
@ -649,10 +667,17 @@ def run_tests(tests):
# Initialize
if TESTS['NVMe/SMART']['Enabled'] or TESTS['badblocks']['Enabled'] or TESTS['iobenchmark']['Enabled']:
if not TESTS['NVMe/SMART']['Quick']:
print_standard(' ')
try_and_print(
message='Connecting to osTicket database...',
function=connect_to_db,
width=40)
print_standard(' ')
print_standard('Scanning disks...')
scan_disks()
update_progress()
pause()
exit_script()
# Run
mprime_aborted = False
@ -683,7 +708,6 @@ def run_tests(tests):
def scan_disks(full_paths=False, only_path=None):
"""Scan for disks eligible for hardware testing."""
clear_screen()
# Get eligible disk list
cmd = ['lsblk', '-J', '-O']

View file

@ -11,6 +11,11 @@ ARCHIVE_PASSWORD='Abracadabra'
KIT_NAME_FULL='Wizard Kit'
KIT_NAME_SHORT='WK'
SUPPORT_MESSAGE='Please let 2Shirt know by opening an issue on GitHub'
# osTicket
DB_HOST='127.0.0.1'
DB_NAME='osticket'
DB_USER='wizardkit'
DB_PASS='Abracadabra'
# Live Linux
MPRIME_LIMIT='7' # of minutes to run Prime95 during hw-diags
ROOT_PASSWORD='Abracadabra'

View file

@ -43,6 +43,7 @@ libinput
linux-firmware
lm_sensors
lzip
mariadb-clients
mdadm
mediainfo
mesa-demos
@ -62,6 +63,7 @@ p7zip
papirus-icon-theme
progsreiserfs
python
python-mysql-connector
python-psutil
python-requests
qemu-guest-agent