[libvirt] [PATCH 00/45 v3] Atomic APIs to list objects

Osier Yang jyang at redhat.com
Fri Aug 17 15:38:08 UTC 2012


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




More information about the libvir-list mailing list