[PATCH 0/2] UI fixes for guest creation/cloning

Aline Manera (2): Bug fix: Properly define kimchi.trackTask() Bug fix: Properly get the new guest name while creating or cloning a guest src/wok/plugins/kimchi/ui/js/src/kimchi.api.js | 26 ++++++++++++++++++++++ .../plugins/kimchi/ui/js/src/kimchi.guest_main.js | 4 ++-- 2 files changed, 28 insertions(+), 2 deletions(-) -- 2.5.0

While creating a new guest, it was not being displayed on UI due the following error: GET https://localhost:8001/plugins/kimchi/tasks?statu..._uri=%5E%2Fplugins%2Fkim... TypeError: kimchi.trackTask is not a function Fix it. Signed-off-by: Aline Manera <alinefm@linux.vnet.ibm.com> --- src/wok/plugins/kimchi/ui/js/src/kimchi.api.js | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/src/wok/plugins/kimchi/ui/js/src/kimchi.api.js b/src/wok/plugins/kimchi/ui/js/src/kimchi.api.js index b1acdb9..d01bed4 100644 --- a/src/wok/plugins/kimchi/ui/js/src/kimchi.api.js +++ b/src/wok/plugins/kimchi/ui/js/src/kimchi.api.js @@ -500,6 +500,32 @@ var kimchi = { }); }, + trackTask : function(taskID, suc, err, progress) { + var onTaskResponse = function(result) { + var taskStatus = result['status']; + switch(taskStatus) { + case 'running': + progress && progress(result); + setTimeout(function() { + kimchi.trackTask(taskID, suc, err, progress); + }, 2000); + break; + case 'finished': + suc && suc(result); + break; + case 'failed': + err && err(result); + break; + default: + break; + } + }; + + kimchi.getTask(taskID, onTaskResponse, err); + if(kimchi.trackingTasks.indexOf(taskID) < 0) + kimchi.trackingTasks.push(taskID); + }, + deleteStoragePool : function(poolName, suc, err) { $.ajax({ url : 'plugins/kimchi/storagepools/' + encodeURIComponent(poolName), -- 2.5.0

When creating or cloning a guest, a fake entry is displayed in the guest list view to represent the guest is being created. After the API changes (from /vms to /plugins/kimchi/vms) the new guest name was wrongly set to 'kimchi'. Fix it by adjusting the array index. Signed-off-by: Aline Manera <alinefm@linux.vnet.ibm.com> --- src/wok/plugins/kimchi/ui/js/src/kimchi.guest_main.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/wok/plugins/kimchi/ui/js/src/kimchi.guest_main.js b/src/wok/plugins/kimchi/ui/js/src/kimchi.guest_main.js index a6e6fd1..eb563fb 100644 --- a/src/wok/plugins/kimchi/ui/js/src/kimchi.guest_main.js +++ b/src/wok/plugins/kimchi/ui/js/src/kimchi.guest_main.js @@ -249,7 +249,7 @@ kimchi.listVmsAuto = function() { kimchi.getTasksByFilter('status=running&target_uri='+encodeURIComponent('^/plugins/kimchi/vms/[^/]+$'), function(tasks) { for(var i=0;i<tasks.length;i++){ var guestUri = tasks[i].target_uri; - var guestName = guestUri.split('/')[2] + var guestName = guestUri.split('/')[4] guests.push($.extend({}, kimchi.sampleGuestObject, {name: guestName, isCreating: true})); if(kimchi.trackingTasks.indexOf(tasks[i].id)==-1) kimchi.trackTask(tasks[i].id, null, function(err){ @@ -264,7 +264,7 @@ kimchi.listVmsAuto = function() { kimchi.getTasksByFilter('status=running&target_uri='+encodeURIComponent('^/plugins/kimchi/vms/.+/clone'), function(tasks) { for(var i=0;i<tasks.length;i++){ var guestUri = tasks[i].target_uri; - var guestName = guestUri.split('/')[2] + var guestName = guestUri.split('/')[4] guests.push($.extend({}, kimchi.sampleGuestObject, {name: guestName, isCloning: true})); if(kimchi.trackingTasks.indexOf(tasks[i].id)==-1) kimchi.trackTask(tasks[i].id, null, function(err){ -- 2.5.0

Reviewed-By: Paulo Vital <pvital@linux.vnet.ibm.com> On Tue, 2015-11-10 at 10:07 -0200, Aline Manera wrote:
Aline Manera (2): Bug fix: Properly define kimchi.trackTask() Bug fix: Properly get the new guest name while creating or cloning a guest
src/wok/plugins/kimchi/ui/js/src/kimchi.api.js | 26 ++++++++++++++++++++++ .../plugins/kimchi/ui/js/src/kimchi.guest_main.js | 4 ++-- 2 files changed, 28 insertions(+), 2 deletions(-)
participants (2)
-
Aline Manera
-
Paulo Ricardo Paz Vital