示例#1
0
文件: vm.py 项目: mattmb/spoke
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
示例#2
0
文件: vm.py 项目: KrisSaxton/spoke
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
示例#3
0
 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))
示例#4
0
 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)
示例#5
0
 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))
示例#6
0
 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)
示例#7
0
    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)