From 0d62968b6f853246d38b06e8378cb9cae7f9bbb4 Mon Sep 17 00:00:00 2001 From: Jan Cholasta Date: Wed, 16 Mar 2016 11:22:00 +0100 Subject: plugable: replace API.import_plugins with new API.add_package Replace API.import_plugins with a new method API.add_package which allows loading plugin packages into an API object from a package object. This makes loading of plugin packages loading consistent with loading of plugin modules and classes. Rename API.modules to API.packages and use package objects where implemented to reflect the change. https://fedorahosted.org/freeipa/ticket/4739 Reviewed-By: David Kupka --- ipalib/__init__.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'ipalib/__init__.py') diff --git a/ipalib/__init__.py b/ipalib/__init__.py index e163b292c..788fc8ead 100644 --- a/ipalib/__init__.py +++ b/ipalib/__init__.py @@ -902,12 +902,18 @@ class API(plugable.API): bases = (Command, Object, Method, Backend, Updater) @property - def modules(self): - result = ('ipalib.plugins.*',) + def packages(self): + import ipalib.plugins + result = (ipalib.plugins,) + if self.env.in_server: - result += ('ipaserver.plugins.*',) + import ipaserver.plugins + result += (ipaserver.plugins,) + if self.env.context in ('installer', 'updates'): - result += ('ipaserver.install.plugins.*',) + import ipaserver.install.plugins + result += (ipaserver.install.plugins,) + return result -- cgit