]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
mgr/dashboard: add progress module tasks to list of dashboard tasks
authorRicardo Dias <rdias@suse.com>
Mon, 15 Jul 2019 14:08:39 +0000 (15:08 +0100)
committerRicardo Dias <rdias@suse.com>
Wed, 17 Jul 2019 10:50:50 +0000 (11:50 +0100)
Fixes: https://tracker.ceph.com/issues/38202
Signed-off-by: Ricardo Dias <rdias@suse.com>
src/pybind/mgr/dashboard/controllers/summary.py
src/pybind/mgr/dashboard/controllers/task.py

index 0b2d51e52747366dca08873b16d3ff9e861cfda6..dc4298b98ebe0301a9aa5e40111c1d55cbc216b0 100644 (file)
@@ -9,6 +9,7 @@ from ..security import Permission, Scope
 from ..controllers.rbd_mirroring import get_daemons_and_pools
 from ..exceptions import ViewCacheNoDataException
 from ..tools import TaskManager
+from ..services import progress
 
 
 @ApiController('/summary')
@@ -73,6 +74,13 @@ class Summary(BaseController):
         executing_tasks = [task for task in exe_t if self._task_permissions(task['name'])]
         finished_tasks = [task for task in fin_t if self._task_permissions(task['name'])]
 
+        e, f = progress.get_progress_tasks()
+        executing_tasks.extend(e)
+        finished_tasks.extend(f)
+
+        executing_tasks.sort(key=lambda t: t['begin_time'], reverse=True)
+        finished_tasks.sort(key=lambda t: t['end_time'], reverse=True)
+
         result = {
             'health_status': self._health_status(),
             'mgr_id': mgr.get_mgr_id(),
index 9380f07015ae74e315c4ac998a30a50c78c159fc..8ac97fdb8f1e746a1d5e301c30223c9fbf7553dc 100644 (file)
@@ -3,12 +3,21 @@ from __future__ import absolute_import
 
 from . import ApiController, RESTController
 from ..tools import TaskManager
+from ..services import progress
 
 
 @ApiController('/task')
 class Task(RESTController):
     def list(self, name=None):
         executing_t, finished_t = TaskManager.list_serializable(name)
+
+        e, f = progress.get_progress_tasks()
+        executing_t.extend(e)
+        finished_t.extend(f)
+
+        executing_t.sort(key=lambda t: t['begin_time'], reverse=True)
+        finished_t.sort(key=lambda t: t['end_time'], reverse=True)
+
         return {
             'executing_tasks': executing_t,
             'finished_tasks': finished_t