Skip to content

Commit

Permalink
restore.py: factor out _restore_property() helper
Browse files Browse the repository at this point in the history
  • Loading branch information
rustybird committed Feb 24, 2018
1 parent 2ace32b commit c86b731
Showing 1 changed file with 9 additions and 5 deletions.
14 changes: 9 additions & 5 deletions qubesadmin/backup/restore.py
Original file line number Diff line number Diff line change
Expand Up @@ -1820,6 +1820,14 @@ def restore_do(self, restore_info):
self.log.info("-> Please install updates for all the restored "
"templates.")

def _restore_property(self, vm, prop, value):
'''Restore a single VM property, logging exceptions'''
try:
setattr(vm, prop, value)
except Exception as err: # pylint: disable=broad-except
self.log.error('Error setting %s.%s to %s: %s',
vm.name, prop, value, err)

def _restore_vms_metadata(self, restore_info):
'''Restore VM metadata
Expand Down Expand Up @@ -1893,11 +1901,7 @@ def _restore_vms_metadata(self, restore_info):
# restore options
if prop in ['template', 'netvm', 'default_dispvm']:
continue
try:
setattr(new_vm, prop, value)
except Exception as err: # pylint: disable=broad-except
self.log.error('Error setting %s.%s to %s: %s',
vm.name, prop, value, err)
self._restore_property(new_vm, prop, value)

for feature, value in vm.features.items():
try:
Expand Down

0 comments on commit c86b731

Please sign in to comment.