From: Tiago Melo Date: Thu, 18 Oct 2018 16:00:46 +0000 (+0100) Subject: mgr/dashboard: Fix missing failed restore notification X-Git-Tag: v14.1.0~1120^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=2f4ce95725b890c8b63679e1a87abdda71157403;p=ceph.git mgr/dashboard: Fix missing failed restore notification Fixes: http://tracker.ceph.com/issues/36513 Signed-off-by: Tiago Melo --- diff --git a/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-trash-restore-modal/rbd-trash-restore-modal.component.ts b/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-trash-restore-modal/rbd-trash-restore-modal.component.ts index c471a0151e8f..427944198213 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-trash-restore-modal/rbd-trash-restore-modal.component.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-trash-restore-modal/rbd-trash-restore-modal.component.ts @@ -44,7 +44,6 @@ export class RbdTrashRestoreModalComponent implements OnInit { task: new FinishedTask('rbd/trash/restore', { pool_name: this.poolName, image_id: this.imageId, - image_name: this.imageName, new_image_name: name }), call: this.rbdService.restoreTrash(this.poolName, this.imageId, name) diff --git a/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.spec.ts b/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.spec.ts index f2615248eecf..c8f0ae67706c 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.spec.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.spec.ts @@ -91,19 +91,22 @@ describe('TaskManagerMessageService', () => { }); describe('rbd tasks', () => { + let metadata; let childMsg: string; let destinationMsg: string; let snapMsg: string; beforeEach(() => { - const metadata = { + metadata = { pool_name: 'somePool', image_name: 'someImage', snapshot_name: 'someSnapShot', dest_pool_name: 'someDestinationPool', dest_image_name: 'someDestinationImage', child_pool_name: 'someChildPool', - child_image_name: 'someChildImage' + child_image_name: 'someChildImage', + new_image_name: 'newImage', + image_id: '12345' }; defaultMsg = `RBD '${metadata.pool_name}/${metadata.image_name}'`; childMsg = `RBD '${metadata.child_pool_name}/${metadata.child_image_name}'`; @@ -172,6 +175,41 @@ describe('TaskManagerMessageService', () => { finishedTask.name = 'rbd/snap/rollback'; testMessages(new TaskMessageOperation('Rolling back', 'rollback', 'Rolled back'), snapMsg); }); + + it('tests rbd/trash/move messages', () => { + finishedTask.name = 'rbd/trash/move'; + testMessages( + new TaskMessageOperation('Moving', 'move', 'Moved'), + `image '${metadata.pool_name}/${metadata.image_name}' to trash` + ); + testErrorCode(2, `Could not find image.`); + }); + + it('tests rbd/trash/restore messages', () => { + finishedTask.name = 'rbd/trash/restore'; + testMessages( + new TaskMessageOperation('Restoring', 'restore', 'Restored'), + `image '${metadata.pool_name}@${metadata.image_id}' \ + into '${metadata.pool_name}/${metadata.new_image_name}'` + ); + testErrorCode( + 17, + `Image name '${metadata.pool_name}/${metadata.new_image_name}' is already in use.` + ); + }); + + it('tests rbd/trash/remove messages', () => { + finishedTask.name = 'rbd/trash/remove'; + testDelete(`image '${metadata.pool_name}/${metadata.image_name}@${metadata.image_id}'`); + }); + + it('tests rbd/trash/purge messages', () => { + finishedTask.name = 'rbd/trash/purge'; + testMessages( + new TaskMessageOperation('Purging', 'purge', 'Purged'), + `images from '${metadata.pool_name}'` + ); + }); }); }); }); diff --git a/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.ts b/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.ts index 4f42e37be683..9cea92c3c052 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.ts @@ -146,7 +146,7 @@ export class TaskMessageService { 'rbd/trash/restore': new TaskMessage( new TaskMessageOperation('Restoring', 'restore', 'Restored'), (metadata) => - `image '${metadata.pool_name}/${metadata.image_name}@${metadata.image_id}' \ + `image '${metadata.pool_name}@${metadata.image_id}' \ into '${metadata.pool_name}/${metadata.new_image_name}'`, (metadata) => ({ 17: `Image name '${metadata.pool_name}/${metadata.new_image_name}' is already in use.`