v3 - v4: * Except a few patches are pushed, it's just rebasing on the top v2 - v3: * Various document fixes/improvements (Suggested by Laine and Eric) * Destroy virdomainlist.[ch], and folder all list helper funcs into its own *_conf.[ch] * Improve the helpers to get the object list. See https://www.redhat.com/archives/libvir-list/2012-July/msg01267.html * Rebased on top of commit 3df9626 by Peter and the virReportError series by Daniel. * Rebased on top of virsh split series. (I'm luck there is no change on those commands since v2). Except the already supported APIs for domain and domain snapshot, this series add the APIs for the left objects, including storage pool, storage vol, network, interface, node device, nwfilter, and secret. * Storage pool: - Support filtering the returned pool objects by active|inactive, persistent|transient, autostart|no-autostart, and pool types. - New options for virsh, --type to accept multiple pool types. * Storage vol: - Simply returns all the vol objects of a pool. * Network: - Support filtering the results using flags active|inactive, persistent|transient, autostart|no-autostart - New options for virsh. * Interface: - Support filtering the results using flags active|inactive. It's still O(n) underlying, as interface driver doesn't manage the objects itself, but using netcf lib instead. And netcf APIs don't support returning the struct yet. * Node Device: - Support filtering the results using capabilities type of the devices. - Extend --cap to accept multiple capability type. * Network Filter: - Simply returns all the objects. * Secret: - Simply returns all the objects. Osier Yang (45): list: Define new API virStorageListAllStoragePools list: Add helpers for listing storage pool objects list: Implement the RPC calls for virConnectListAllStoragePools list: Implement listAllStoragePools for storage driver list: Implement listAllStoragePools for test driver list: Add helper to convert strings separated by ', ' to array virsh: Fix the wrong doc for pool-list list: Change MATCH for common use in virsh list: Use virConnectListAllStoragePools in virsh python: Expose virStorageListAllStoragePools to python binding list: Define new API virStoragePoolListAllVolumes list: Implemente RPC calls for virStoragePoolListAllVolumes list: Implement virStoragePoolListAllVolumes for storage driver list: Implement virStoragePoolListAllVolumes for test driver list: Use virStoragePoolListAllVolumes in virsh list: Expose virStoragePoolListAllVolumes to Python binding list: Define new API virConnectListAllNetworks list: Implement RPC calls for virConnectListAllNetworks list: Add helpers to list network objects list: Implement listAllNetworks for network driver list: Implement listAllNetworks for test driver list: Use virConnectListAllNetworks in virsh list: Expose virConnectListAllNetworks to Python binding list: Define new API virConnectListAllInterfaces list: Implemente RPC calls for virConnectListAllInterfaces list: Implement listAllInterfaces list: Use virConnectListAllInterfaces in virsh list: Expose virConnectListAllInterfaces to Python binding list: Define new API virConnectListAllNodeDevices list: Implemente RPC calls for virConnectListAllNodeDevices list: Add helpers for listing node devices list: Implement listAllNodeDevices list: Expose virConnectListAllNodeDevices to Python binding virsh: Fix a bug of nodedev-list list: Use virConnectListAllNodeDevices in virsh list: Define new API virConnectListAllNWFilters list: Implement RPC calls for virConnectListAllNWFilters list: Implement listAllNWFilters list: Use virConnectListAllNWFilters in virsh list: Expose virConnectListAllNWFilters to Python binding list: Define new API virConnectListAllSecrets list: Implement RPC calls for virConnectListAllSecrets list: Implement listAllSecrets list: Use virConnectListAllSecrets in virsh list: Expose virConnectListAllSecrets to Python binding daemon/remote.c | 382 ++++++++++++++++++++++ include/libvirt/libvirt.h.in | 101 ++++++- python/generator.py | 11 +- python/libvirt-override-api.xml | 44 +++- python/libvirt-override-virConnect.py | 72 +++++ python/libvirt-override-virStoragePool.py | 11 + python/libvirt-override.c | 337 ++++++++++++++++++++ src/conf/network_conf.c | 91 ++++++ src/conf/network_conf.h | 22 ++ src/conf/node_device_conf.c | 103 ++++++ src/conf/node_device_conf.h | 16 + src/conf/storage_conf.c | 116 +++++++ src/conf/storage_conf.h | 35 ++ src/driver.h | 35 ++- src/interface/netcf_driver.c | 135 ++++++++ src/libvirt.c | 487 ++++++++++++++++++++++++++++- src/libvirt_private.syms | 4 + src/libvirt_public.syms | 7 + src/network/bridge_driver.c | 17 + src/node_device/node_device_driver.c | 15 + src/node_device/node_device_driver.h | 3 + src/node_device/node_device_hal.c | 1 + src/node_device/node_device_udev.c | 1 + src/nwfilter/nwfilter_driver.c | 56 ++++ src/remote/remote_driver.c | 449 ++++++++++++++++++++++++++ src/remote/remote_protocol.x | 80 +++++- src/remote_protocol-structs | 85 +++++ src/secret/secret_driver.c | 59 ++++- src/storage/storage_driver.c | 85 +++++ src/test/test_driver.c | 101 ++++++ tools/virsh-domain-monitor.c | 2 - tools/virsh-domain.c | 19 +- tools/virsh-interface.c | 259 +++++++++++----- tools/virsh-network.c | 351 ++++++++++++++++----- tools/virsh-nodedev.c | 302 ++++++++++++++++--- tools/virsh-nwfilter.c | 163 ++++++++-- tools/virsh-pool.c | 441 ++++++++++++++++++++------ tools/virsh-secret.c | 182 +++++++++-- tools/virsh-volume.c | 197 +++++++++--- tools/virsh.c | 56 +++- tools/virsh.pod | 51 +++- 41 files changed, 4521 insertions(+), 463 deletions(-) create mode 100644 python/libvirt-override-virStoragePool.py -- 1.7.7.3 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list