summaryrefslogtreecommitdiffstats
path: root/pylint_plugins.py
diff options
context:
space:
mode:
authorChristian Heimes <cheimes@redhat.com>2016-10-18 09:14:31 +0200
committerDavid Kupka <dkupka@redhat.com>2016-10-20 10:42:00 +0200
commit8f98fa1bd5f1da207fab6f89b75e0cdc19d00797 (patch)
treecbddaeadb21accf30fcb136ea91b15cb511f5631 /pylint_plugins.py
parenta42059228018839ae2656c27f5b00d96bc935ee3 (diff)
downloadfreeipa-8f98fa1bd5f1da207fab6f89b75e0cdc19d00797.tar.gz
freeipa-8f98fa1bd5f1da207fab6f89b75e0cdc19d00797.tar.xz
freeipa-8f98fa1bd5f1da207fab6f89b75e0cdc19d00797.zip
Replace ipaplatform's symlinks with a meta importer
Signed-off-by: Christian Heimes <cheimes@redhat.com> Reviewed-By: Petr Spacek <pspacek@redhat.com>
Diffstat (limited to 'pylint_plugins.py')
-rw-r--r--pylint_plugins.py20
1 files changed, 19 insertions, 1 deletions
diff --git a/pylint_plugins.py b/pylint_plugins.py
index bf357737c..6273d2c84 100644
--- a/pylint_plugins.py
+++ b/pylint_plugins.py
@@ -6,9 +6,11 @@ from __future__ import print_function
import copy
import sys
+import textwrap
-from astroid import MANAGER
+from astroid import MANAGER, register_module_extender
from astroid import scoped_nodes
+from astroid.builder import AstroidBuilder
def register(linter):
@@ -255,3 +257,19 @@ def fix_ipa_classes(cls):
fake_class(cls, ipa_class_members[class_name_with_module])
MANAGER.register_transform(scoped_nodes.Class, fix_ipa_classes)
+
+
+def ipaplatform_transform():
+ """Module aliases for IpaPlatformImporter
+ """
+ return AstroidBuilder(MANAGER).string_build(textwrap.dedent(
+ """
+ from ipaplatform.base import constants
+ from ipaplatform.base import paths
+ from ipaplatform.base import services
+ from ipaplatform.base import tasks
+ """
+ ))
+
+
+register_module_extender(MANAGER, 'ipaplatform', ipaplatform_transform)