Feature #55887
openmgr/dashboard: automatically reload back-end on changes
0%
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