From 9524015425c354314d289ddbd7f1a2f296b9ed9c Mon Sep 17 00:00:00 2001 From: Ricardo Marques Date: Wed, 17 Oct 2018 18:18:24 +0100 Subject: [PATCH] mgr/dashboard: Fix long running RBD cloning / copying message Fixes: https://tracker.ceph.com/issues/36484 Signed-off-by: Ricardo Marques --- .../block/rbd-list/rbd-list.component.spec.ts | 28 +++++++++++++------ .../ceph/block/rbd-list/rbd-list.component.ts | 18 +++++++++++- 2 files changed, 37 insertions(+), 9 deletions(-) diff --git a/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-list/rbd-list.component.spec.ts b/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-list/rbd-list.component.spec.ts index b5d259ea99a..b15bb8dd6c1 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-list/rbd-list.component.spec.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-list/rbd-list.component.spec.ts @@ -107,14 +107,26 @@ describe('RbdListComponent', () => { const addTask = (name: string, image_name: string) => { const task = new ExecutingTask(); task.name = name; - task.metadata = { - pool_name: 'rbd', - image_name: image_name, - child_pool_name: 'rbd', - child_image_name: 'd', - dest_pool_name: 'rbd', - dest_image_name: 'd' - }; + switch (task.name) { + case 'rbd/copy': + task.metadata = { + dest_pool_name: 'rbd', + dest_image_name: 'd' + }; + break; + case 'rbd/clone': + task.metadata = { + child_pool_name: 'rbd', + child_image_name: 'd' + }; + break; + default: + task.metadata = { + pool_name: 'rbd', + image_name: image_name + }; + break; + } summaryService.addRunningTask(task); }; diff --git a/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-list/rbd-list.component.ts b/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-list/rbd-list.component.ts index 5db4a6a67e2..78fbc60c1d3 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-list/rbd-list.component.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-list/rbd-list.component.ts @@ -232,8 +232,24 @@ export class RbdListComponent implements OnInit { } itemFilter(entry, task) { + let pool_name_k: string; + let image_name_k: string; + switch (task.name) { + case 'rbd/copy': + pool_name_k = 'dest_pool_name'; + image_name_k = 'dest_image_name'; + break; + case 'rbd/clone': + pool_name_k = 'child_pool_name'; + image_name_k = 'child_image_name'; + break; + default: + pool_name_k = 'pool_name'; + image_name_k = 'image_name'; + break; + } return ( - entry.pool_name === task.metadata['pool_name'] && entry.name === task.metadata['image_name'] + entry.pool_name === task.metadata[pool_name_k] && entry.name === task.metadata[image_name_k] ); } -- 2.39.5