def info(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) disk = vdc.get_disk(name=name, disk_id=id) stdout(disk_to_dict(disk), ctx) except Exception as e: stderr(e, ctx)
def info(ctx, name): try: 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) disk = vdc.get_disk(name=name, disk_id=id) stdout(disk_to_dict(disk), ctx) except Exception as e: stderr(e, ctx)
def delete(ctx, name): try: 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 detach(ctx, vapp_name, vm_name, disk_name): try: client = ctx.obj['client'] vdc_href = ctx.obj['profiles'].get('vdc_href') vdc = VDC(client, href=vdc_href) disk_name, disk_id = extract_name_and_id(disk_name) disk = vdc.get_disk(name=disk_name, disk_id=disk_id) vapp_resource = vdc.get_vapp(vapp_name) vapp = VApp(client, resource=vapp_resource) task = vapp.detach_disk_from_vm( disk_href=disk.get('href'), vm_name=vm_name) stdout(task, ctx) except Exception as e: stderr(e, ctx)
def change_disk_owner(ctx, disk_name, user_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) in_use_org_href = ctx.obj['profiles'].get('org_href') org = Org(client, in_use_org_href) user_resource = org.get_user(user_name) disk_name, disk_id = extract_name_and_id(disk_name) vdc.change_disk_owner( user_href=user_resource.get('href'), name=disk_name, disk_id=disk_id) stdout('Owner of disk \'%s\' changed to \'%s\'' % (disk_name, user_name), ctx) except Exception as e: stderr(e, ctx)
def detach(ctx, vapp_name, vm_name, disk_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) disk_name, disk_id = extract_name_and_id(disk_name) disk = vdc.get_disk(name=disk_name, disk_id=disk_id) vapp_resource = vdc.get_vapp(vapp_name) vapp = VApp(client, resource=vapp_resource) task = vapp.detach_disk_from_vm( disk_href=disk.get('href'), vm_name=vm_name) stdout(task, ctx) except Exception as e: stderr(e, ctx)
def change_disk_owner(ctx, disk_name, user_name): try: client = ctx.obj['client'] vdc_href = ctx.obj['profiles'].get('vdc_href') vdc = VDC(client, href=vdc_href) in_use_org_href = ctx.obj['profiles'].get('org_href') org = Org(client, in_use_org_href) user_resource = org.get_user(user_name) disk_name, disk_id = extract_name_and_id(disk_name) vdc.change_disk_owner(user_href=user_resource.get('href'), name=disk_name, disk_id=disk_id) stdout( 'Owner of disk \'%s\' changed to \'%s\'' % (disk_name, user_name), ctx) except Exception as e: stderr(e, ctx)
def update(ctx, name, new_name, size, description, storage_profile, iops): 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) new_size = None if size is not None: new_size = humanfriendly.parse_size(size) name, id = extract_name_and_id(name) task = vdc.update_disk( name=name, disk_id=id, new_name=new_name, new_size=new_size, new_description=description, new_storage_profile_name=storage_profile, new_iops=iops) stdout(task, ctx) except Exception as e: stderr(e, ctx)
def update(ctx, name, new_name, size, description, storage_profile, iops): try: client = ctx.obj['client'] vdc_href = ctx.obj['profiles'].get('vdc_href') vdc = VDC(client, href=vdc_href) new_size = None if size is not None: new_size = humanfriendly.parse_size(size) name, id = extract_name_and_id(name) task = vdc.update_disk(name=name, disk_id=id, new_name=new_name, new_size=new_size, new_description=description, new_storage_profile_name=storage_profile, new_iops=iops) stdout(task, ctx) except Exception as e: stderr(e, ctx)