Actions
Refactor #12747
closedProvide some kind of central store or consistent way to manage dynamically registered objects from plugins
Status:
Resolved
Priority:
Normal
Assignee:
-
Category:
Plugin integration
Target version:
-
Description
Currently, there are number of things you can register for plugins - compute resources, dashboard widgets, etc.
Dashboard widgets stores plugin registered widgets like this: https://github.com/theforeman/foreman/blob/develop/app/services/dashboard/manager.rb#L3
Compute resource store plugin registered resources like this: https://github.com/theforeman/foreman/blob/develop/app/models/compute_resource.rb#L13
It's all very inconsistent. We should standardize on a single way, perhaps even having some kind of central store to put this kind of data.
The problem when we re-invent this for every new dynamically registered thing, we introduce potential problems, like #12746.
Actions