[Kimchi-devel] [PATCH 0/5] Create VMs Asynchronously

Christy Perez christy at linux.vnet.ibm.com
Wed Feb 25 16:53:21 UTC 2015


If a guest has a large disk, and uses a filesystem that requires
preallocation, it can take several minutes to create a VM. During that
time, kimchi is tied up by the VM creation.

This patch changes the VMs Collection to be an AsyncCollection.

Another change required for this was to create a more granular way to
query tasks. Currently it is not possible (using the API) to query tasks
for the same collection or resource type that may have different operations.
For example, VM cloning is also an asynchronous operation. For the guests tab,
the UI was querying all running tasks and displaying them with the Cloning
label. This picked up VMs that were being created as well. For more information
about how the tasks can be queried, see the updated API doc and the UI change.

Christy Perez (5):
  Granular Task Queries: Backend
  Granular task queries test updates
  More Granular Task Queries: UI
  Create guests asynchronously: Backend
  Async vm creation test updates

 docs/API.md                        | 14 +++++++
 src/kimchi/asynctask.py            |  6 ++-
 src/kimchi/control/vms.py          |  4 +-
 src/kimchi/mockmodel.py            |  7 ++--
 src/kimchi/model/debugreports.py   |  4 +-
 src/kimchi/model/host.py           |  4 +-
 src/kimchi/model/storagepools.py   |  2 +-
 src/kimchi/model/storagevolumes.py |  7 ++--
 src/kimchi/model/tasks.py          |  1 -
 src/kimchi/model/vms.py            | 32 ++++++++++++---
 src/kimchi/model/vmsnapshots.py    |  3 +-
 src/kimchi/utils.py                |  4 +-
 tests/test_authorization.py        | 23 ++++++-----
 tests/test_mockmodel.py            | 15 +++++--
 tests/test_model.py                | 62 ++++++++++++++++++----------
 tests/test_rest.py                 | 82 ++++++++++++++++++++++++++++----------
 ui/js/src/kimchi.guest_main.js     |  2 +-
 17 files changed, 191 insertions(+), 81 deletions(-)

-- 
2.1.0




More information about the Kimchi-devel mailing list