New Plugin not being found


#1

Hi,

I am trying to add a new plugin to indico. The plugin is written (and being used by another indico user). I have added it to the conf file but it still gives me an error when debugging / executing the following code (engine.py)

def _import_plugins(self, app):
        """Import the plugins for an application.

        :param app: A Flask application
        :return: A dict mapping plugin names to plugin classes
        """
        state = get_state(app)
        plugins = {}
        for name in state.app.config['PLUGINENGINE_PLUGINS']:
            entry_points = list(iter_entry_points(app.config['PLUGINENGINE_NAMESPACE'], name))
            if not entry_points:
                state.logger.error('Plugin %s does not exist', name)
                state.failed.add(name)
                continue

It doesn’t seem to be able to find an entry in PLUGINENGINE_NAMESPACE. Is this build up dynamically? I am not to sure if I need to do any more configuration other than addng to ‘plugins’ in the config file – any ideas / help would be appreciated.


#2

You need to pip install the plugin; and its setup.py needs to contain a line like this in its setup() call:

entry_points={'indico.plugins': {'foobar = indico_foobar.plugin:FoobarPlugin'}}

#3

ok - i have done the pip install and the new code seems to be there. will check the setup.py and go through it / try again - thanks