updated menu_backup()
This commit is contained in:
parent
b96e5f3be6
commit
850a1fca73
1 changed files with 29 additions and 13 deletions
|
|
@ -56,6 +56,7 @@ def menu_backup():
|
||||||
other_results = {
|
other_results = {
|
||||||
'Error': {
|
'Error': {
|
||||||
'CalledProcessError': 'Unknown Error',
|
'CalledProcessError': 'Unknown Error',
|
||||||
|
'PathNotFoundError': 'Missing',
|
||||||
},
|
},
|
||||||
'Warning': {
|
'Warning': {
|
||||||
'GenericAbort': 'Skipped',
|
'GenericAbort': 'Skipped',
|
||||||
|
|
@ -112,25 +113,40 @@ def menu_backup():
|
||||||
par['Error'] = result['Error']
|
par['Error'] = result['Error']
|
||||||
|
|
||||||
# Verify backup(s)
|
# Verify backup(s)
|
||||||
if disk['Valid Partitions'] > 1:
|
if disk['Valid Partitions']:
|
||||||
print_info('\n\n Verifying backups\n')
|
print_info('\n\n Verifying backup images(s)\n')
|
||||||
else:
|
for par in disk['Partitions']:
|
||||||
print_info('\n\n Verifying backup\n')
|
if par['Number'] in disk['Bad Partitions']:
|
||||||
for par in disk['Partitions']:
|
continue # Skip verification
|
||||||
if par['Number'] in disk['Bad Partitions']:
|
message = 'Partition {} Image...'.format(par['Number'])
|
||||||
continue # Skip verification
|
result = try_and_print(message=message, function=verify_wim_backup,
|
||||||
try:
|
other_results=other_results, partition=par)
|
||||||
verify_wim_backup(bin, par)
|
if not result['CS']:
|
||||||
except BackupError:
|
errors = True
|
||||||
errors = True
|
par['Error'] = result['Error']
|
||||||
|
|
||||||
# Print summary
|
# Print summary
|
||||||
if errors:
|
if errors:
|
||||||
print_warning('\nErrors were encountered and are detailed below.')
|
print_warning('\nErrors were encountered and are detailed below.')
|
||||||
for par in [p for p in disk['Partitions'] if 'Error' in p]:
|
for par in [p for p in disk['Partitions'] if 'Error' in p]:
|
||||||
print_standard(' Partition {} Error:'.format(par['Number']))
|
print_standard(' Partition {} Error:'.format(par['Number']))
|
||||||
for line in [line.strip() for line in par['Error'] if line.strip()]:
|
if hasattr(par['Error'], 'stderr'):
|
||||||
print_error('\t{}'.format(line))
|
try:
|
||||||
|
par['Error'] = par['Error'].stderr.decode()
|
||||||
|
except:
|
||||||
|
# Deal with badly formatted error message
|
||||||
|
pass
|
||||||
|
if isinstance(par['Error'], basestring):
|
||||||
|
print_error('\t{}'.format(par['Error']))
|
||||||
|
else:
|
||||||
|
try:
|
||||||
|
par['Error'] = par['Error'].splitlines()
|
||||||
|
par['Error'] = [line.strip() for line in par['Error']]
|
||||||
|
par['Error'] = [line for line in par['Error'] if line]
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
for line in par['Error']:
|
||||||
|
print_error('\t{}'.format(line))
|
||||||
time.sleep(30)
|
time.sleep(30)
|
||||||
else:
|
else:
|
||||||
print_success('\nNo errors were encountered during imaging.')
|
print_success('\nNo errors were encountered during imaging.')
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue