grafana / synthetic-monitoring-app

Synthetic Monitoring frontend application
https://grafana.com/docs/grafana-cloud/how-do-i/synthetic-monitoring/
GNU Affero General Public License v3.0
144 stars 19 forks source link

Remove dependency on hg-cloud-home admin app for gathering information on free tier users #946

Open ckbedwell opened 1 month ago

ckbedwell commented 1 month ago

Problem

When solving https://github.com/grafana/synthetic-monitoring-app/issues/914 we introduced a dependency on the hg-cloud-home-app by utilizing the gcom api routes they provide as defined in their plugin.json. This is a brittle dependency as they are free to change any aspect of their plugin at any time and should not have to concern themselves with if they are breaking any other plugins they are not responsible for.

Completion criteria

Please explore alternative options to get the information necessary for the Synthetic Monitoring plugin. The requirements for this issue to be considered resolved are:

Additional considerations

When considering alternative options please consider what information we might need other than the org's subscription type in the future. Having access to the full gcom api is very appealing in terms of adding new features and maintaining velocity, however it isn't strictly necessary and doesn't follow the principle of least privilege.

If we were to explore options of adding the user's org subscription type in the SM api please consider what other information would be useful to be exposed for future product development (pricing information comes to mind immediately so we could easily show costs and help check management for interested admins).

Lastly, when considering solutions please consider what steps would need to be taken to accommodate access to the api. If we were to copy the hg-cloud-home-admin app's approach and add the gcom api routes to our plugin.json what information would we need to add to our provisioning files? How would we gather / add that information to existing stacks?

VikaCep commented 1 month ago

Since the dependency was removed in https://github.com/grafana/synthetic-monitoring-app/pull/944, this issue could be closed right @ckbedwell?