def get_plugin_attributes(cls, cluster): plugins_attrs = {} for plugin_db in PluginCollection.all_newest(): attr_plugin = wrap_plugin(plugin_db) attrs = attr_plugin.get_plugin_attributes(cluster) plugins_attrs.update(attrs) return plugins_attrs
def get_plugin_attributes(cls, cluster): plugin_attributes = {} for plugin_db in PluginCollection.all_newest(): plugin_adapter = wrap_plugin(plugin_db) attributes = plugin_adapter.get_plugin_attributes(cluster) plugin_attributes.update(attributes) return plugin_attributes
def sync_plugins_metadata(cls, plugin_ids=None): """Sync metadata for plugins by given ids. If there is not ids all newest plugins will be synced """ if plugin_ids: plugins = PluginCollection.get_by_uids(plugin_ids) else: plugins = PluginCollection.all_newest() for plugin in plugins: plugin_wrapper = wrap_plugin(plugin) plugin_wrapper.sync_metadata_to_db()
def enable_plugins_by_components(cls, cluster): """Enable plugin by components. :param cluster: A cluster instance :type cluster: Cluster model """ cluster_components = set(cluster.components) plugin_ids = [p.id for p in PluginCollection.all_newest()] for plugin in ClusterPlugin.get_connected_plugins(cluster, plugin_ids): plugin_adapter = wrap_plugin(plugin) plugin_components = set( component['name'] for component in plugin_adapter.components_metadata) if cluster_components & plugin_components: ClusterPlugin.set_attributes(cluster.id, plugin.id, enabled=True)
def enable_plugins_by_components(cls, cluster): """Enable plugin by components. :param cluster: A cluster instance :type cluster: Cluster model """ cluster_components = set(cluster.components) plugin_ids = [p.id for p in PluginCollection.all_newest()] for plugin in ClusterPlugins.get_connected_plugins( cluster, plugin_ids): plugin_adapter = wrap_plugin(plugin) plugin_components = set( component['name'] for component in plugin_adapter.components_metadata) if cluster_components & plugin_components: ClusterPlugins.set_attributes( cluster.id, plugin.id, enabled=True)