def list_disks(client): logging.info('INIT create_disk') logged_in_org = client.get_org() org = Org(client, resource=logged_in_org) v = org.get_vdc('OVD2') if v is None: raise errors.VDCNotFoundError(vappInfo.vdc) vdc = VDC(client, href=v.get('href')) #disks = vdc.get_disk('disk02') #print(etree.tostring(disks, pretty_print=True)) logging.info(disks.get('href')) vdc.delete_disk('disk02')
def test_008_delete_all_disks(self): logged_in_org = self.client.get_org() org = Org(self.client, resource=logged_in_org) v = org.get_vdc(self.config['vcd']['vdc']) vdc = VDC(self.client, href=v.get('href')) disks = vdc.get_disks() for disk in disks: print(("Deleting disk: " + disk.get('id'))) taskObj = vdc.delete_disk(None, disk.get('id')) print(("Deleted VDC disk: " + str(etree.tostring(taskObj, pretty_print=True), "utf-8"))) #print("VDC Disk: " + str(disk)) task = self.client.get_task_monitor().wait_for_status( task=taskObj, timeout=30, poll_frequency=2, fail_on_status=None, expected_target_statuses=[ TaskStatus.SUCCESS, TaskStatus.ABORTED, TaskStatus.ERROR, TaskStatus.CANCELED ], callback=None) assert task.get('status') == TaskStatus.SUCCESS.value
def delete_disks(client): logging.info('INIT create_disk') logged_in_org = client.get_org() org = Org(client, resource=logged_in_org) v = org.get_vdc('OVD2') if v is None: raise errors.VDCNotFoundError(vappInfo.vdc) vdc = VDC(client, href=v.get('href')) disks = vdc.get_disks() print(etree.tostring(disks[0], pretty_print=True)) #logging.info(disks[].get('href')) result = vdc.delete_disk('disk02') task = client.get_task_monitor().wait_for_status( task=result, timeout=60, poll_frequency=2, fail_on_status=None, expected_target_statuses=[ TaskStatus.SUCCESS, TaskStatus.ABORTED, TaskStatus.ERROR, TaskStatus.CANCELED ], callback=task_callback) st = task.get('status') if st == TaskStatus.SUCCESS.value: logging.info("__LOG__ created DISK") #cresult.created = True else: raise errors.VCDDiskDeletionError( etree.tostring(task, pretty_print=True))
def delete_disks(client): logging.info('INIT create_disk') logged_in_org = client.get_org() org = Org(client, resource=logged_in_org) v = org.get_vdc('OVD2') if v is None: raise errors.VDCNotFoundError(vappInfo.vdc) vdc = VDC(client, href=v.get('href')) disks = vdc.get_disks() print(etree.tostring(disks[0], pretty_print=True)) #logging.info(disks[].get('href')) result = vdc.delete_disk('disk02') task = client.get_task_monitor().wait_for_status(task=result, timeout=60, poll_frequency=2, fail_on_status=None, expected_target_statuses=[ TaskStatus.SUCCESS, TaskStatus.ABORTED, TaskStatus.ERROR, TaskStatus.CANCELED ], callback=task_callback) st = task.get('status') if st == TaskStatus.SUCCESS.value: logging.info("__LOG__ created DISK") #cresult.created = True else: raise errors.VCDDiskDeletionError( etree.tostring(task, pretty_print=True))
def delete(ctx, name, disk_id): try: client = ctx.obj['client'] vdc_href = ctx.obj['profiles'].get('vdc_href') vdc = VDC(client, href=vdc_href) task = vdc.delete_disk(name, disk_id=disk_id) stdout(task, ctx) except Exception as e: stderr(e, ctx)
def delete(ctx, name): try: restore_session(ctx, vdc_required=True) client = ctx.obj['client'] vdc_href = ctx.obj['profiles'].get('vdc_href') vdc = VDC(client, href=vdc_href) name, id = extract_name_and_id(name) task = vdc.delete_disk(name=name, disk_id=id) stdout(task, ctx) except Exception as e: stderr(e, ctx)
def test_9998_teardown(self): """Test the method VDC.delete_vdc(). Invoke the method for the vdc created by setup. This test passes if the task for deleting the vdc succeeds. """ logger = Environment.get_default_logger() vdc = VDC(TestOrgVDC._client, href=TestOrgVDC._new_vdc_href) task = vdc.delete_disk(name=self._idisk_name) TestOrgVDC._client.get_task_monitor().wait_for_success(task=task) # Disable the org vdc before deleting it. In case the org vdc is # already disabled, we don't want the exception to leak out. try: vdc.enable_vdc(enable=False) logger.debug('Disabled vdc ' + TestOrgVDC._new_vdc_name + '.') except OperationNotSupportedException as e: logger.debug('vdc ' + TestOrgVDC._new_vdc_name + ' is already disabled.') pass task = vdc.delete_vdc() TestOrgVDC._client.get_task_monitor().wait_for_success(task=task) logger.debug('Deleted vdc ' + TestOrgVDC._new_vdc_name + '.')
def test_200_delete_all_disks(self): logged_in_org = self.client.get_org() org = Org(self.client, resource=logged_in_org) vdc_resource = org.get_vdc(self.config['vcd']['vdc']) vdc = VDC(self.client, resource=vdc_resource) disks = vdc.get_disks() for disk in disks: result = vdc.delete_disk(disk_id=disk.get('id')) task = self.client.get_task_monitor().wait_for_status( task=result, timeout=30, poll_frequency=2, fail_on_status=None, expected_target_statuses=[ TaskStatus.SUCCESS, TaskStatus.ABORTED, TaskStatus.ERROR, TaskStatus.CANCELED ], callback=None) assert task.get('status') == TaskStatus.SUCCESS.value
class Disk(VcdAnsibleModule): def __init__(self, **kwargs): super(Disk, self).__init__(**kwargs) logged_in_org = self.client.get_org() self.org = Org(self.client, resource=logged_in_org) vdc = self.org.get_vdc(self.params.get('vdc')) self.vdc = VDC(self.client, href=vdc.get('href')) def manage_states(self): state = self.params.get('state') if state == 'present': return self.create() if state == 'absent': return self.delete() if state == 'update': return self.update() def create(self): disk_name = self.params.get('disk_name') disk_id = self.params.get('disk_id') size = self.params.get('size') description = self.params.get('description') storage_profile = self.params.get('storage_profile') bus_type = self.params.get('bus_type') bus_sub_type = self.params.get('bus_sub_type') iops = self.params.get('iops') response = dict() response['changed'] = False try: self.vdc.get_disk(name=disk_name, disk_id=disk_id) except EntityNotFoundException: create_disk_task = self.vdc.create_disk( name=disk_name, size=size, bus_type=bus_type, bus_sub_type=bus_sub_type, description=description, iops=iops, storage_profile_name=storage_profile) self.execute_task(create_disk_task.Tasks.Task[0]) response['msg'] = 'Disk {} has been created.'.format(disk_name) response['changed'] = True else: response['msg'] = "Disk {} is already present.".format(disk_name) return response def update(self): disk_name = self.params.get('disk_name') disk_id = self.params.get('disk_id') new_disk_name = self.params.get('new_disk_name') new_size = self.params.get('new_size') new_description = self.params.get('new_description') new_storage_profile = self.params.get('new_storage_profile') new_iops = self.params.get('new_iops') response = dict() response['changed'] = False update_disk_task = self.vdc.update_disk( name=disk_name, disk_id=disk_id, new_name=new_disk_name, new_size=new_size, new_iops=new_iops, new_description=new_description, new_storage_profile_name=new_storage_profile) self.execute_task(update_disk_task) response['msg'] = 'Disk {} has been updated.'.format(disk_name) response['changed'] = True return response def delete(self): disk_name = self.params.get('disk_name') disk_id = self.params.get('disk_id') response = dict() response['changed'] = False try: self.vdc.get_disk(name=disk_name, disk_id=disk_id) except EntityNotFoundException: response['msg'] = "Disk {} is not present.".format(disk_name) else: delete_disk_task = self.vdc.delete_disk(name=disk_name, disk_id=disk_id) self.execute_task(delete_disk_task) response['msg'] = 'Disk {} has been deleted.'.format(disk_name) response['changed'] = True return response