Exemplo n.º 1
0
def cleanup_lvm_volumes(step, vg_name):
    step_assert(step).assert_true(world.lvm_volumes)
    table = utils.ascii_table(utils.bash("sudo lvs|sed 's/Origin .* Convert//'| sed 's/  */\|/g'").output_text())
    all_volumes = table.select_values('LV', 'VG', vg_name)
    volumes_to_clean  = set(all_volumes) - set(world.lvm_volumes)
    for volume in volumes_to_clean:
        step_assert(step).assert_true(utils.bash('sudo lvremove -f %s/%s' % (vg_name, volume)))
Exemplo n.º 2
0
def volume_is_resized(step, device, vm_name, timeout):
    start_time = datetime.now()
    volume_id = utils.nova_cli.get_local_volume_id(device, vm_name)
    volume_name = "volume-%0.8x" % int(volume_id)
    while(datetime.now() - start_time).seconds < int(timeout):
        if utils.bash("cat /var/log/nova/nova-compute.log|grep 'Resize of volume %s is finished'" % volume_name).successful():
            return True
        sleep(1)
    raise RuntimeError("%s:\nVolume %s isn't resized within %s seconds" % (step.sentence, volume_name, timeout))
Exemplo n.º 3
0
def record_lvm_volumes(step, vg_name):
    table = utils.ascii_table(utils.bash("sudo lvs|sed 's/Origin .* Convert//'| sed 's/  */\|/g'").output_text())
    world.lvm_volumes = table.select_values('LV', 'VG', vg_name)