Project

General

Profile

Actions

Feature #55887

open

mgr/dashboard: automatically reload back-end on changes

Added by Ernesto Puerta almost 2 years ago.

Status:
New
Priority:
Normal
Assignee:
Category:
General - Back-end
Target version:
-
% Done:

0%

Source:
Tags:
Backport:
Reviewed:
Affected Versions:
Pull request ID:

Description

While the front-end (Angular, port 4200) supports incremental rebuilds on saved changes, there's no such a thing for the back-end (Python).

Cherrypy already has support for this by configuring engine.autoreload.on: True. The Autoreloader plugin simply uses advanced Python features for checking the list of loaded Python files, then it looks for the modification date of the file, and if newer, then it unloads it and reloads it.

This would heavily simplify the Dashboard development (restarting the ceph-mgr takes half a minute).

This should be disabled by default (for production environments) and only enabled on developer environments.

Due to the Python subinterpreter quirks, this could be potentially "impossible" to achieve. A good way to start would be to choose the dashboard file that is most commonly modified and try unloading and realoading (to verify if that works with subinterpreters).

No data to display

Actions

Also available in: Atom PDF