def get_vm(self): from XenGarden.VM import VM try: vm = self.session.xenapi.VIF.get_VM(self.vif) vm = VM(self.session, vm) vm.get_uuid() return vm except Failure as xenapi_error: if xenapi_error.details[0] == "HANDLE_INVALID": return None else: raise xenapi_error
def get_VM(self): """ get VM attached to the specified VBD """ try: from XenGarden.VM import VM vm = self.session.xenapi.VBD.get_VM(self.vbd) vm = VM(self.session, vm) vm.get_uuid() return vm except Failure as xenapi_error: if xenapi_error.details[0] == "HANDLE_INVALID": return None else: raise xenapi_error
def serialize(vm: VM): return dict( name=vm.get_name(), bios=vm.get_bios_strings(), power=vm.get_power_state(), description=vm.get_description(), uuid=vm.get_uuid(), vCPUs=vm.get_vCPUs(), memory=vm.get_memory(), )