Connect Frontend and backend for external dashboard link
We need to connect the backend with the frontend for the external dashboard button on the metrics dashboard.
This will involve the backend passing the persisted external dashboard url to the frontend. It also involves the frontend submitting the form on the project operation settings page as specified below:
The following discussion from !27880 (merged) should be addressed:
-
@rpereira2 started a discussion: (+1 comment) @adrielsantiago, just a heads up. Backend MRs have been merged, so if you require any more backend changes, let me know.
For the settings create/update API, you can use the same API that is used by the other forms on the operations settings page (error tracking in CE, tracing & incident management in EE):
PATCH/PUT /*namespace_id/:project_id/settings/operations(.:format)
The parameters should be in the following form:
{ 'project': { 'metrics_setting_attributes': { 'external_dashboard_url': 'http://grafana.com' } } }
To remove the button, you can send a blank string or null as the value of the
external_dashboard_url
key.Also, I've created a docs MR: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/27950