[PATCH v2 0/6] Introducing storage pool lifecycle event APIs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Changes follow comments on v1 patches.

Introducing implementation of storage pool event APIs. Code changes
follow network event APIs.

Implemented functions: virStoragePoolEventRegisterAny(),
virStoragePoolEventDeregisterAny(), virStoragePoolLifeCycleEventNew(),
introduced STARTED, STOPPED, DEFINE, UNDEFINE and REFRESHED.

STARTED signal is emiited in storagePoolCreateXML() and storagePoolCreate()
DEFINED signal is emitted in storagePoolDefineXML()
UNDEFINED signal is emitted in storagePoolUndefine()
STOPPED signal is emitted in storagePoolDestroy() and storagePoolRefresh()
REFRESHED signal is emitted in storagePoolRefresh()

There are also test as well as unittests for the new functions and signals.

This is part of a GSOC project: Asynchronous lifecycle events for storage objects
As part of the project there should also be implementation for
storage volume events.
For now there's no signal when volumes are created or deleted,
they can also be implemented, but probably the easiest way is to have
apps watch for REFRESH signal, and later extend storage driver code to
refresh a pool after volume APIs are called.

Jovanka Gulicoska (6):
  Introduce storage lifecycle event APIs
  conf: add storage_event handling
  test: implement storage lifecycle event APIs
  remote: implement storage lifecycle event APIs
  storage: implement storage lifecycle event APIs
  event-test: support storage lifecycle event APIs

 daemon/libvirtd.h                   |   2 +
 daemon/remote.c                     | 201 +++++++++++++++++++++++++++++-
 examples/object-events/event-test.c |  46 ++++++-
 include/libvirt/libvirt-storage.h   |  94 ++++++++++++++
 src/Makefile.am                     |   5 +
 src/conf/storage_conf.h             |   4 +
 src/conf/storage_event.c            | 237 ++++++++++++++++++++++++++++++++++++
 src/conf/storage_event.h            |  60 +++++++++
 src/datatypes.h                     |  13 ++
 src/driver-storage.h                |  14 +++
 src/libvirt-storage.c               | 125 +++++++++++++++++++
 src/libvirt_private.syms            |   5 +
 src/libvirt_public.syms             |   7 ++
 src/remote/remote_driver.c          | 128 +++++++++++++++++++
 src/remote/remote_protocol.x        |  43 ++++++-
 src/remote_protocol-structs         |  16 +++
 src/storage/storage_driver.c        | 110 +++++++++++++++++
 src/test/test_driver.c              |  71 +++++++++++
 tests/objecteventtest.c             | 177 +++++++++++++++++++++++++++
 19 files changed, 1355 insertions(+), 3 deletions(-)
 create mode 100644 src/conf/storage_event.c
 create mode 100644 src/conf/storage_event.h

-- 
2.5.5

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list



[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]