def power_delete(vm_name): from spoke.lib.vm_power import SpokeVMPowerXen vmp = SpokeVMPowerXen(hv_uri, vm_name) try: result = vmp.delete() except error.SpokeError as e: result = common.handle_error(e) return result
def power_delete(vm_name, force=False): try: conf = _spoke_config(_salt_config('config')) hv_uri = conf.get('VM', 'hv_uri') vmp = SpokeVMPowerXen(hv_uri, vm_name) result = vmp.delete(force=force) except error.SpokeError as e: result = common.handle_error(e) return result
def test_force_poweroff_vm(self): """Force power off a running virtual machine object; return True""" vm_name = 'test' vm = SpokeVMPowerXen(self.hv_uri, vm_name) self.assertTrue(vm.delete(force=True))
def test_poweroff_stopped_vm(self): """Power off a non-running virtual machine object; raise VMStopped""" vm_name = 'test' vm = SpokeVMPowerXen(self.hv_uri, vm_name) vm.delete() self.assertRaises(error.VMStopped, vm.delete)
except error.SpokeError, e: mc.fail(e.msg, e.exit_code) if request['action'] == 'search': try: mc.data = vmp.get() except error.SpokeError, e: mc.fail(e.msg, e.exit_code) elif request['action'] == 'on': try: mc.data = vmp.create() except error.SpokeError, e: mc.fail(e.msg, e.exit_code) elif request['action'] == 'off': try: mc.data = vmp.delete() except error.SpokeError, e: mc.fail(e.msg, e.exit_code) elif request['action'] == 'forceoff': try: mc.data = vmp.delete(force=True) except error.SpokeError, e: mc.fail(e.msg, e.exit_code) elif request['action'] == 'reboot': try: mc.data = vmp.modify(vm_power_state='reboot') except error.SpokeError, e: mc.fail(e.msg, e.exit_code) else: msg = "Unknown action: " + request['action'] mc.fail(msg, 2)