def test_06_attachvolume_to_a_stopped_vm(self): """ Test Attach Volume To A Stopped VM """ list_vm_response = VirtualMachine.list(self.user_api_client, id=self.virtual_machine.id) self.assertEqual(list_vm_response[0].state, 'Stopped', msg="Check if VM is in Stopped state") custom_disk_offering = DiskOffering.list(self.user_api_client, name="custom") self.__class__.volume = Volume.create( self.user_api_client, self.services["volume"], zoneid=self.zone.id, account=self.account.name, domainid=self.account.domainid, diskofferingid=custom_disk_offering[0].id, size=1) # Check List Volume response for newly created volume list_volume_response = Volume.list(self.user_api_client, id=self.volume.id) self.assertNotEqual(list_volume_response, None, "Check if volume exists in ListVolumes") # Attach volume to VM cmd = attachVolume.attachVolumeCmd() cmd.id = self.volume.id cmd.virtualmachineid = self.virtual_machine.id cmd.deviceid = 1 vol1 = self.user_api_client.attachVolume(cmd) # Check all volumes attached to same VM list_volume_response = Volume.list( self.user_api_client, virtualmachineid=self.virtual_machine.id, type='DATADISK', listall=True) self.assertNotEqual(list_volume_response, None, "Check if volume exists in ListVolumes") self.assertEqual(isinstance(list_volume_response, list), True, "Check list volumes response for valid list") self.assertEqual(list_volume_response[0].deviceid, 1, "Check listed volume device id is 1") return
def test_15_restore_vm_with_template_id(self): """ Test restoring Virtual Machine with template id """ noffering = NetworkOffering.list( self.user_api_client, name="DefaultIsolatedNetworkOfferingWithSourceNatService") vm1network = Network.create(self.user_api_client, self.services["network"], accountid=self.account.name, domainid=self.account.domainid, networkofferingid=noffering[0].id, zoneid=self.zone.id) list_nw_response = Network.list(self.user_api_client, id=vm1network.id) self.assertEqual(isinstance(list_nw_response, list), True, "Check list response returns a valid networks list") restorevm = VirtualMachine.create( self.user_api_client, self.services["small"], networkids=vm1network.id, accountid=self.account.name, domainid=self.account.domainid, serviceofferingid=self.service_offering.id, mode=self.services['mode'], startvm="true") time.sleep(600) list_vm_response = VirtualMachine.list(self.user_api_client, id=restorevm.id) self.assertEqual(list_vm_response[0].state, "Running", "Check virtual machine is in running state") custom_disk_offering = DiskOffering.list(self.user_api_client, name="custom") newvolume = Volume.create(self.user_api_client, self.services["volume"], zoneid=self.zone.id, account=self.account.name, domainid=self.domain.id, diskofferingid=custom_disk_offering[0].id, size=1) # Attach volume to VM cmd = attachVolume.attachVolumeCmd() cmd.id = newvolume.id cmd.virtualmachineid = restorevm.id cmd.deviceid = 1 vol1 = self.user_api_client.attachVolume(cmd) cmd = restoreVirtualMachine.restoreVirtualMachineCmd() cmd.virtualmachineid = restorevm.id cmd.templateid = self.xtemplate.id self.user_api_client.restoreVirtualMachine(cmd) time.sleep(600) list_vm_response = VirtualMachine.list(self.user_api_client, id=restorevm.id) self.assertEqual(isinstance(list_vm_response, list), True, "Check list response returns a valid list") self.assertNotEqual(len(list_vm_response), 0, "Check VM available in List Virtual Machines") self.assertEqual(list_vm_response[0].state, "Running", "Check virtual machine is in Stopped state") restorevm.delete(self.apiclient) vm1network.delete(self.user_api_client) return
def test_15_restore_vm_with_template_id(self): """ Test restoring Virtual Machine with template id """ noffering=NetworkOffering.list( self.user_api_client, name="DefaultIsolatedNetworkOfferingWithSourceNatService" ) vm1network=Network.create( self.user_api_client, self.services["network"], accountid=self.account.name, domainid=self.account.domainid, networkofferingid=noffering[0].id, zoneid=self.zone.id ) list_nw_response = Network.list( self.user_api_client, id=vm1network.id ) self.assertEqual( isinstance(list_nw_response, list), True, "Check list response returns a valid networks list" ) restorevm = VirtualMachine.create( self.user_api_client, self.services["small"], networkids=vm1network.id, accountid=self.account.name, domainid=self.account.domainid, serviceofferingid=self.service_offering.id, mode=self.services['mode'], startvm="true" ) time.sleep(600) list_vm_response = VirtualMachine.list( self.user_api_client, id=restorevm.id ) self.assertEqual( list_vm_response[0].state, "Running", "Check virtual machine is in running state" ) custom_disk_offering=DiskOffering.list( self.user_api_client, name="custom" ) newvolume = Volume.create( self.user_api_client, self.services["volume"], zoneid=self.zone.id, account=self.account.name, domainid=self.domain.id, diskofferingid=custom_disk_offering[0].id, size=1 ) # Attach volume to VM cmd = attachVolume.attachVolumeCmd() cmd.id = newvolume.id cmd.virtualmachineid = restorevm.id cmd.deviceid=1 vol1=self.user_api_client.attachVolume(cmd) cmd = restoreVirtualMachine.restoreVirtualMachineCmd() cmd.virtualmachineid = restorevm.id cmd.templateid = self.xtemplate.id self.user_api_client.restoreVirtualMachine(cmd) time.sleep(600) list_vm_response = VirtualMachine.list( self.user_api_client, id=restorevm.id ) self.assertEqual( isinstance(list_vm_response, list), True, "Check list response returns a valid list" ) self.assertNotEqual( len(list_vm_response), 0, "Check VM available in List Virtual Machines" ) self.assertEqual( list_vm_response[0].state, "Running", "Check virtual machine is in Stopped state" ) restorevm.delete(self.apiclient) vm1network.delete(self.user_api_client) return
def test_06_attachvolume_to_a_stopped_vm(self): """ Test Attach Volume To A Stopped VM """ list_vm_response = VirtualMachine.list( self.user_api_client, id=self.virtual_machine.id ) self.assertEqual( list_vm_response[0].state, 'Stopped', msg="Check if VM is in Stopped state" ) custom_disk_offering=DiskOffering.list( self.user_api_client, name="custom" ) self.__class__.volume = Volume.create( self.user_api_client, self.services["volume"], zoneid=self.zone.id, account=self.account.name, domainid=self.account.domainid, diskofferingid=custom_disk_offering[0].id, size=1 ) # Check List Volume response for newly created volume list_volume_response = Volume.list( self.user_api_client, id=self.volume.id ) self.assertNotEqual( list_volume_response, None, "Check if volume exists in ListVolumes" ) # Attach volume to VM cmd = attachVolume.attachVolumeCmd() cmd.id = self.volume.id cmd.virtualmachineid = self.virtual_machine.id cmd.deviceid=1 vol1=self.user_api_client.attachVolume(cmd) # Check all volumes attached to same VM list_volume_response = Volume.list( self.user_api_client, virtualmachineid=self.virtual_machine.id, type='DATADISK', listall=True ) self.assertNotEqual( list_volume_response, None, "Check if volume exists in ListVolumes") self.assertEqual( isinstance(list_volume_response, list), True, "Check list volumes response for valid list") self.assertEqual( list_volume_response[0].deviceid, 1, "Check listed volume device id is 1") return