storage: Add gluster pool filter and fix virsh pool listing

Recent addition of the gluster pool type omitted fixing the virsh and
virConnectListAllStoragePool filters. A typecast of the converting
function in virsh showed that also the sheepdog pool was omitted in the
command parser.

This patch adds gluster pool filtering support and fixes virsh to
properly convert all supported storage pool types. The added typecast
should avoid doing such mistakes in the future.
This commit is contained in:
Peter Krempa 2013-12-13 10:31:50 +01:00
parent 32487c86c6
commit b560946c19
4 changed files with 13 additions and 4 deletions

View File

@ -3056,6 +3056,7 @@ typedef enum {
VIR_CONNECT_LIST_STORAGE_POOLS_MPATH = 1 << 13,
VIR_CONNECT_LIST_STORAGE_POOLS_RBD = 1 << 14,
VIR_CONNECT_LIST_STORAGE_POOLS_SHEEPDOG = 1 << 15,
VIR_CONNECT_LIST_STORAGE_POOLS_GLUSTER = 1 << 16,
} virConnectListAllStoragePoolsFlags;
int virConnectListAllStoragePools(virConnectPtr conn,

View File

@ -2217,7 +2217,9 @@ virStoragePoolMatch(virStoragePoolObjPtr poolobj,
(MATCH(VIR_CONNECT_LIST_STORAGE_POOLS_RBD) &&
(poolobj->def->type == VIR_STORAGE_POOL_RBD)) ||
(MATCH(VIR_CONNECT_LIST_STORAGE_POOLS_SHEEPDOG) &&
(poolobj->def->type == VIR_STORAGE_POOL_SHEEPDOG))))
(poolobj->def->type == VIR_STORAGE_POOL_SHEEPDOG)) ||
(MATCH(VIR_CONNECT_LIST_STORAGE_POOLS_GLUSTER) &&
(poolobj->def->type == VIR_STORAGE_POOL_GLUSTER))))
return false;
}

View File

@ -1006,7 +1006,7 @@ cmdPoolList(vshControl *ctl, const vshCmd *cmd ATTRIBUTE_UNUSED)
return false;
}
switch (poolType) {
switch ((enum virStoragePoolType) poolType) {
case VIR_STORAGE_POOL_DIR:
flags |= VIR_CONNECT_LIST_STORAGE_POOLS_DIR;
break;
@ -1034,7 +1034,13 @@ cmdPoolList(vshControl *ctl, const vshCmd *cmd ATTRIBUTE_UNUSED)
case VIR_STORAGE_POOL_RBD:
flags |= VIR_CONNECT_LIST_STORAGE_POOLS_RBD;
break;
default:
case VIR_STORAGE_POOL_SHEEPDOG:
flags |= VIR_CONNECT_LIST_STORAGE_POOLS_SHEEPDOG;
break;
case VIR_STORAGE_POOL_GLUSTER:
flags |= VIR_CONNECT_LIST_STORAGE_POOLS_GLUSTER;
break;
case VIR_STORAGE_POOL_LAST:
break;
}
}

View File

@ -2589,7 +2589,7 @@ with autostarting disabled.
You may also want to list pools with specified types using I<type>, the
pool types must be separated by comma, e.g. --type dir,disk. The valid pool
types include 'dir', 'fs', 'netfs', 'logical', 'disk', 'iscsi', 'scsi',
'mpath', 'rbd', and 'sheepdog'.
'mpath', 'rbd', 'sheepdog' and 'gluster'.
The I<--details> option instructs virsh to additionally
display pool persistence and capacity related information where available.