Ejemplo n.º 1
0
def main():
    """The main."""
    args = parser.parse_args()
    vg_name = args.group
    #vg = lvm.LVM(vg_name, 'sudo')
    root_helper = 'sudo'
    groups = lvm.LVM.get_all_volume_groups(root_helper, vg_name=vg_name)
    for group in groups:
        utils.print_dict(group, value_align='l', disable_unicode=True)
        vols = lvm.LVM.get_lv_info(root_helper, vg_name=group['name'])
        for vol in vols:
            utils.print_dict(vol)
Ejemplo n.º 2
0
def main():
    """The main."""
    args = parser.parse_args()
    #initiator = utils.get_initiator()
    #utils.print_dict(initiator, value_align='l', disable_unicode=True)

    # now get iSCSI and FC and list
    root_helper = 'sudo',
    iscsi_c = connector.InitiatorConnector.factory(initiator.ISCSI,
                                                   root_helper)
    paths = iscsi_c.get_all_available_volumes()
    if paths:
        print("iSCSI Devices")
        utils.print_dict(paths, value_align='l', disable_unicode=True)

    fc_c = connector.InitiatorConnector.factory(initiator.FIBRE_CHANNEL,
                                                root_helper)
    paths = fc_c.get_all_available_volumes()
    if paths:
        print("Fibre Channel Devices")
        utils.print_dict(paths, value_align='l', disable_unicode=True)
Ejemplo n.º 3
0
def main():
    """The main."""
    args = parser.parse_args()
    initiator = utils.get_initiator()
    client = utils.build_cinder(args)

    volumes = client.volumes.list(True)
    if args.list:
        for vol in volumes:
            if vol.status == 'in-use':
                print("Name: '%(name)s' %(id)s Size:%(size)sG Type:%(type)s " %
                      {'name': vol.name, 'id': vol.id, 'size': vol.size,
                       'type': vol.volume_type})

        sys.exit(0)

    info = dict()
    volume = client.volumes.get(args.volume)
    info['id'] = volume._info['id']
    info['encrypted'] = volume._info['encrypted']
    info['multiattach'] = volume._info['multiattach']
    info['status'] = volume._info['status']
    info['host'] = volume._info['os-vol-host-attr:host']
    info['size'] = volume._info['size']
    info['volume_type'] = volume._info['volume_type']
    info['attachments'] = volume._info['attachments']
    # info.update(volume._info)
    info.pop('links', None)

    # now fetch the volume paths
    if volume.status == 'in-use':
        conn = client.volumes.initialize_connection(volume, initiator)
        b = connector.InitiatorConnector.factory(
            conn['driver_volume_type'], 'sudo',
            use_multipath=initiator['multipath'])
        info['system-paths'] = b.get_volume_paths(conn['data'])

    utils.print_dict(info, value_align='l', disable_unicode=True)
Ejemplo n.º 4
0
def main():
    """The main."""
    args = parser.parse_args()
    initiator = utils.get_initiator()

    utils.print_dict(initiator, value_align='l', disable_unicode=True)