Include Mac serial number in OST Post

This commit is contained in:
2Shirt 2021-03-13 03:20:51 -07:00
parent 72259303b9
commit 4dc5c51beb
2 changed files with 13 additions and 0 deletions

View file

@ -1291,6 +1291,8 @@ def ost_build_report(dev, dev_type):
report.append(dev.description) report.append(dev.description)
if hasattr(dev, 'ram_total'): if hasattr(dev, 'ram_total'):
report.append(f'{dev.ram_total} ({", ".join(dev.ram_dimms)})') report.append(f'{dev.ram_total} ({", ".join(dev.ram_dimms)})')
if hasattr(dev, 'serial') and dev.serial:
report.append(f'Serial Number: {dev.serial}')
report.append('') report.append('')
# Notes # Notes

View file

@ -35,6 +35,7 @@ NVME_WARNING_KEYS = (
'reliability_degraded', 'reliability_degraded',
'volatile_memory_backup_failed', 'volatile_memory_backup_failed',
) )
MAC_SERIAL_REGEX = re.compile(r'Serial Number.*?:\s+(?P<serial>.*)\n')
WK_LABEL_REGEX = re.compile( WK_LABEL_REGEX = re.compile(
fr'{KIT_NAME_SHORT}_(LINUX|UFD)', fr'{KIT_NAME_SHORT}_(LINUX|UFD)',
re.IGNORECASE, re.IGNORECASE,
@ -75,11 +76,13 @@ class CpuRam(BaseObj):
self.details = {} self.details = {}
self.ram_total = 'Unknown' self.ram_total = 'Unknown'
self.ram_dimms = [] self.ram_dimms = []
self.serial = ''
self.tests = OrderedDict() self.tests = OrderedDict()
# Update details # Update details
self.get_cpu_details() self.get_cpu_details()
self.get_ram_details() self.get_ram_details()
self.get_serial_number()
def generate_report(self): def generate_report(self):
"""Generate CPU & RAM report, returns list.""" """Generate CPU & RAM report, returns list."""
@ -146,6 +149,14 @@ class CpuRam(BaseObj):
f'{count}x {desc}' for desc, count in sorted(details.items()) f'{count}x {desc}' for desc, count in sorted(details.items())
] ]
def get_serial_number(self):
if PLATFORM == 'Darwin':
cmd = ['system_profiler', 'SPHardwareDataType']
proc = run_program(cmd, check=False)
match = MAC_SERIAL_REGEX.search(proc.stdout)
if match:
self.serial = match['serial'].strip()
class Disk(BaseObj): class Disk(BaseObj):
"""Object for tracking disk specific data.""" """Object for tracking disk specific data."""