mgr/dashboard: Push Grafana dashboards on startup
Because we didn't have viable way to populate Grafana dashboards in a
fully containerized context, we needed a different method. This will
work in packaged and containerized deployments.
We provide three methods to push the dashboard JSON files to the Grafana
instance: a command (ceph dashboard update-grafana-dashboards); an API
endpoint (/api/grafana/update_dashboards); and an automatic on-startup
feature that is disabled by default (ceph dashboard
set-grafana-update-dashboards true). The on-startup method will also
retry periodically to avoid racing with the startup of Grafana itself.
Signed-off-by: Zack Cerza <zack@redhat.com>
(cherry picked from commit
c0bc7dafa777cfb349f372237ec91c5285dd4df2)