diff --git a/roles/ipaclient/library/ipaclient_api.py b/roles/ipaclient/library/ipaclient_api.py
index aa80d6d49dd950ad07f18d991e0b42e2994880d0..4514ce3cf8bf991a5fc3e71408ceb5307d1016ca 100644
--- a/roles/ipaclient/library/ipaclient_api.py
+++ b/roles/ipaclient/library/ipaclient_api.py
@@ -70,13 +70,15 @@ subject_base:
 '''
 
 import os
-import sys
-import time
-import tempfile
 import inspect
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_client import *
+from ansible.module_utils.ansible_ipa_client import (
+    paths, x509, NUM_VERSION, serialization, certdb, api,
+    delete_persistent_client_session_data, write_tmp_file,
+    ipa_generate_password, CalledProcessError, errors, disable_ra, DN,
+    CLIENT_INSTALL_ERROR, logger
+)
 
 def main():
     module = AnsibleModule(
diff --git a/roles/ipaclient/library/ipaclient_fix_ca.py b/roles/ipaclient/library/ipaclient_fix_ca.py
index 6e4b2bcb9ce905eb2f6cab6957bd51f364419d19..4d13cdbb973233032a495625c7bab6baa7055f80 100644
--- a/roles/ipaclient/library/ipaclient_fix_ca.py
+++ b/roles/ipaclient/library/ipaclient_fix_ca.py
@@ -67,8 +67,11 @@ RETURN = '''
 import os
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_client import *
-    
+from ansible.module_utils.ansible_ipa_client import (
+    SECURE_PATH, paths, sysrestore, options, NUM_VERSION, get_ca_cert,
+    get_ca_certs, errors
+)
+
 def main():
     module = AnsibleModule(
         argument_spec = dict(
diff --git a/roles/ipaclient/library/ipaclient_fstore.py b/roles/ipaclient/library/ipaclient_fstore.py
index b74cf445cc0e7032fa830aa2b4b6b3d9cd1b4b02..f41cd5f048d4669eeae04a1e1ec2cd9406ceac2f 100644
--- a/roles/ipaclient/library/ipaclient_fstore.py
+++ b/roles/ipaclient/library/ipaclient_fstore.py
@@ -52,7 +52,9 @@ RETURN = '''
 '''
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_client import *
+from ansible.module_utils.ansible_ipa_client import (
+    paths, sysrestore
+)
 
 def main():
     module = AnsibleModule(
diff --git a/roles/ipaclient/library/ipaclient_ipa_conf.py b/roles/ipaclient/library/ipaclient_ipa_conf.py
index 5486eba9cc60fe57f6b77f98e8848b10b198b847..b68798f89d1ba2d4fdfd62f49e962d66cb4fb625 100644
--- a/roles/ipaclient/library/ipaclient_ipa_conf.py
+++ b/roles/ipaclient/library/ipaclient_ipa_conf.py
@@ -71,11 +71,10 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
-import os
-import tempfile
-
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_client import *
+from ansible.module_utils.ansible_ipa_client import (
+    paths, sysrestore, configure_ipa_conf
+)
 
 def main():
     module = AnsibleModule(
diff --git a/roles/ipaclient/library/ipaclient_join.py b/roles/ipaclient/library/ipaclient_join.py
index 838852d43222782800e486647154ff8029c2bdf6..6a8e6235f81394f713af464350edf31ab9b81e82 100644
--- a/roles/ipaclient/library/ipaclient_join.py
+++ b/roles/ipaclient/library/ipaclient_join.py
@@ -127,7 +127,11 @@ import os
 import tempfile
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_client import *
+from ansible.module_utils.ansible_ipa_client import (
+    SECURE_PATH, sysrestore, paths, options, configure_krb5_conf,
+    realm_to_suffix, kinit_keytab, GSSError, kinit_password, NUM_VERSION,
+    get_ca_cert, get_ca_certs, errors, run
+)
 
 def main():
     module = AnsibleModule(
diff --git a/roles/ipaclient/library/ipaclient_set_hostname.py b/roles/ipaclient/library/ipaclient_set_hostname.py
index 2e5f6d3080af017cdee2a5e1f180980a7e55266e..7b2c2df4c0c9d6a89ae9a05edc87e1432c371a98 100644
--- a/roles/ipaclient/library/ipaclient_set_hostname.py
+++ b/roles/ipaclient/library/ipaclient_set_hostname.py
@@ -52,11 +52,11 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
-import os
-import tempfile
-
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_client import *
+from ansible.module_utils.ansible_ipa_client import (
+    sysrestore, paths, tasks
+)
+
 
 def main():
     module = AnsibleModule(
diff --git a/roles/ipaclient/library/ipaclient_setup_automount.py b/roles/ipaclient/library/ipaclient_setup_automount.py
index 8b94f5b2efb62b6d5ae09b3c1fca73c7e9d377c0..ca4e2d19076968678a8ee9e311ddde66c297284a 100644
--- a/roles/ipaclient/library/ipaclient_setup_automount.py
+++ b/roles/ipaclient/library/ipaclient_setup_automount.py
@@ -55,10 +55,11 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
-import os
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_client import *
+from ansible.module_utils.ansible_ipa_client import (
+    options, configure_automount
+)
 
 def main():
     module = AnsibleModule(
diff --git a/roles/ipaclient/library/ipaclient_setup_firefox.py b/roles/ipaclient/library/ipaclient_setup_firefox.py
index 3a9b1b119b555e5020033dd5b937398b43a98bda..8f1fe2fa9f1b00b1a8094b8f4c9326b7145857ef 100644
--- a/roles/ipaclient/library/ipaclient_setup_firefox.py
+++ b/roles/ipaclient/library/ipaclient_setup_firefox.py
@@ -57,7 +57,9 @@ RETURN = '''
 '''
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_client import *
+from ansible.module_utils.ansible_ipa_client import (
+    sysrestore, paths, options, configure_firefox
+)
 
 def main():
     module = AnsibleModule(
diff --git a/roles/ipaclient/library/ipaclient_setup_krb5.py b/roles/ipaclient/library/ipaclient_setup_krb5.py
index 8ad5590ff5f1912af89514470701eda4d0b221c8..0422e72aa83fdce9088bd3c53a94ad0973f1f087 100644
--- a/roles/ipaclient/library/ipaclient_setup_krb5.py
+++ b/roles/ipaclient/library/ipaclient_setup_krb5.py
@@ -58,10 +58,10 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
-import os
-
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_client import *
+from ansible.module_utils.ansible_ipa_client import (
+    sysrestore, paths, configure_krb5_conf, logger
+)
 
 def main():
     module = AnsibleModule(
diff --git a/roles/ipaclient/library/ipaclient_setup_nis.py b/roles/ipaclient/library/ipaclient_setup_nis.py
index 9ef3da502ac70a39a05742a433d3a698e94d845a..054c4584b8f4cde3211809e7e25d69f9909f3789 100644
--- a/roles/ipaclient/library/ipaclient_setup_nis.py
+++ b/roles/ipaclient/library/ipaclient_setup_nis.py
@@ -54,10 +54,12 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
-import os
+import inspect
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_client import *
+from ansible.module_utils.ansible_ipa_client import (
+    options,  sysrestore, paths, configure_nisdomain
+)
 
 def main():
     module = AnsibleModule(
diff --git a/roles/ipaclient/library/ipaclient_setup_nss.py b/roles/ipaclient/library/ipaclient_setup_nss.py
index 1d8de99c48bf9f3db3cb125bdf62866ec7872216..0a460eafdd194425cdd55a4dc2ce40da7616bd49 100644
--- a/roles/ipaclient/library/ipaclient_setup_nss.py
+++ b/roles/ipaclient/library/ipaclient_setup_nss.py
@@ -155,9 +155,17 @@ RETURN = '''
 
 import os
 import time
+import inspect
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_client import *
+from ansible.module_utils.ansible_ipa_client import (
+    options, sysrestore, paths, ansible_module_get_parsed_ip_addresses,
+    api, errors, create_ipa_nssdb, ipautil, ScriptError, CLIENT_INSTALL_ERROR,
+    get_certs_from_ldap, DN, certstore, x509, logger, certdb,
+    CalledProcessError, tasks, client_dns, configure_certmonger, services,
+    update_ssh_keys, save_state, configure_ldap_conf, configure_nslcd_conf,
+    nosssd_files, configure_openldap_conf, hardcode_ldap_server
+)
 
 def main():
     module = AnsibleModule(
diff --git a/roles/ipaclient/library/ipaclient_setup_ntp.py b/roles/ipaclient/library/ipaclient_setup_ntp.py
index 645b8f1cfce03cbbbe5c9e81913a498e4cbfa541..5400825c1daed5ae86dbea82da0bd49f6fb8d536 100644
--- a/roles/ipaclient/library/ipaclient_setup_ntp.py
+++ b/roles/ipaclient/library/ipaclient_setup_ntp.py
@@ -83,11 +83,13 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
-import os
-import socket
+import inspect
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_client import *
+from ansible.module_utils.ansible_ipa_client import (
+    options, sysrestore, paths, sync_time, logger, ipadiscovery,
+    timeconf
+)
 
 def main():
     module = AnsibleModule(
diff --git a/roles/ipaclient/library/ipaclient_setup_ssh.py b/roles/ipaclient/library/ipaclient_setup_ssh.py
index 9aefac9d2db20e68dc294931f510a01ba630ebe9..6c3cf4fdb21b50b29f6fab95bde48aacd8abe9d2 100644
--- a/roles/ipaclient/library/ipaclient_setup_ssh.py
+++ b/roles/ipaclient/library/ipaclient_setup_ssh.py
@@ -75,10 +75,10 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
-import os
-
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_client import *
+from ansible.module_utils.ansible_ipa_client import (
+    options, sysrestore, paths, configure_ssh_config, configure_sshd_config
+)
 
 def main():
     module = AnsibleModule(
diff --git a/roles/ipaclient/library/ipaclient_setup_sssd.py b/roles/ipaclient/library/ipaclient_setup_sssd.py
index f53643d6dc17fe5cc81422d0147a25e672f9d778..4d9d2416570baa1602921d064aa82be1725d66d7 100644
--- a/roles/ipaclient/library/ipaclient_setup_sssd.py
+++ b/roles/ipaclient/library/ipaclient_setup_sssd.py
@@ -116,7 +116,9 @@ RETURN = '''
 '''
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_client import *
+from ansible.module_utils.ansible_ipa_client import (
+    options, sysrestore, paths, configure_sssd_conf, logger
+)
 
 def main():
     module = AnsibleModule(
diff --git a/roles/ipaclient/library/ipaclient_test.py b/roles/ipaclient/library/ipaclient_test.py
index 445b75182fbd811e3c624e796ccc54c83accecc9..cce9fe63241a96adb0a00d1d07abd4c1807bfa32 100644
--- a/roles/ipaclient/library/ipaclient_test.py
+++ b/roles/ipaclient/library/ipaclient_test.py
@@ -202,10 +202,18 @@ ipa_python_version:
 
 import os
 import socket
+import inspect
 
 from six.moves.configparser import RawConfigParser
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_client import *
+from ansible.module_utils.ansible_ipa_client import (
+    paths, sysrestore, options, CheckedIPAddress, validate_domain_name,
+    logger, x509, normalize_hostname, installer, version, ScriptError,
+    CLIENT_INSTALL_ERROR, tasks, check_ldap_conf, timeconf, constants,
+    validate_hostname, nssldap_exists, gssapi, remove_file,
+    check_ip_addresses, ipadiscovery, print_port_conf_info,
+    IPA_PYTHON_VERSION
+)
 
 def get_cert_path(cert_path):
     """
diff --git a/roles/ipaclient/library/ipaclient_test_keytab.py b/roles/ipaclient/library/ipaclient_test_keytab.py
index 6d557014da34b4054d46715f51e91d0d05b95526..5d63f5c7bc7b9e7642291bc4cad21ca19bf7143c 100644
--- a/roles/ipaclient/library/ipaclient_test_keytab.py
+++ b/roles/ipaclient/library/ipaclient_test_keytab.py
@@ -104,7 +104,9 @@ import os
 import tempfile
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_client import *
+from ansible.module_utils.ansible_ipa_client import (
+    SECURE_PATH, paths, kinit_keytab, run, GSSError, configure_krb5_conf
+)
 
 def main():
     module = AnsibleModule(
diff --git a/roles/ipaclient/module_utils/ansible_ipa_client.py b/roles/ipaclient/module_utils/ansible_ipa_client.py
index bf7a6184103a14d3312c263ee6c4bf76afebb041..d5f2b8219edc106bfafe2c8989c34efb14a8a2f6 100644
--- a/roles/ipaclient/module_utils/ansible_ipa_client.py
+++ b/roles/ipaclient/module_utils/ansible_ipa_client.py
@@ -74,8 +74,6 @@ if NUM_VERSION >= 40400:
     import gssapi
     import logging
 
-    import six
-
     from ipapython import version
     try:
         from ipaclient.install import ipadiscovery
@@ -104,8 +102,10 @@ if NUM_VERSION >= 40400:
     from ipaplatform import services
     from ipaplatform.paths import paths
     from ipaplatform.tasks import tasks
-    if NUM_VERSION >= 40500 and NUM_VERSION < 40590:
+    try:
         from cryptography.hazmat.primitives import serialization
+    except ImportError:
+        serialization = None
     from ipapython.ipautil import CalledProcessError, write_tmp_file, \
         ipa_generate_password
     from ipapython.dn import DN
@@ -126,7 +126,9 @@ if NUM_VERSION >= 40400:
             CLIENT_INSTALL_ERROR, is_ipa_client_installed, \
             CLIENT_ALREADY_CONFIGURED, nssldap_exists, remove_file, \
             check_ip_addresses, print_port_conf_info, configure_ipa_conf, \
-            purge_host_keytab, configure_sssd_conf
+            purge_host_keytab, configure_sssd_conf, configure_ldap_conf, \
+            configure_nslcd_conf, nosssd_files
+        get_ca_cert = None
     except ImportError:
         # Create temporary copy of ipa-client-install script (as
         # ipa_client_install.py) to be able to import the script easily
@@ -135,7 +137,8 @@ if NUM_VERSION >= 40400:
         # needed in the next step.
         # This is done in a temporary directory that gets removed right
         # after ipa_client_install has been imported.
-        import shutil, tempfile
+        import shutil
+        import tempfile
         temp_dir = tempfile.mkdtemp(dir="/tmp")
         sys.path.append(temp_dir)
         temp_file = "%s/ipa_client_install.py" % temp_dir
@@ -169,6 +172,7 @@ if NUM_VERSION >= 40400:
             get_ca_cert = ipa_client_install.get_ca_cert
             get_ca_certs = None
         else:
+            get_ca_cert = None
             get_ca_certs = ipa_client_install.get_ca_certs
         SECURE_PATH = ("/bin:/sbin:/usr/kerberos/bin:/usr/kerberos/sbin:/usr/bin:/usr/sbin")
 
@@ -192,6 +196,10 @@ if NUM_VERSION >= 40400:
             def configure_nisdomain(options, domain, statestore=None):
                 return ipa_client_install.configure_nisdomain(options, domain)
 
+        configure_ldap_conf = ipa_client_install.configure_ldap_conf
+        configure_nslcd_conf = ipa_client_install.configure_nslcd_conf
+        nosssd_files = ipa_client_install.nosssd_files
+
         configure_ssh_config = ipa_client_install.configure_ssh_config
         configure_sshd_config = ipa_client_install.configure_sshd_config
         configure_automount = ipa_client_install.configure_automount
@@ -199,9 +207,6 @@ if NUM_VERSION >= 40400:
 
     from ipapython.ipautil import realm_to_suffix, run
 
-    if six.PY3:
-        unicode = str
-
     try:
         from ipaclient.install import timeconf
         time_service = "chronyd"
@@ -253,4 +258,3 @@ def ansible_module_get_parsed_ip_addresses(ansible_module,
             ansible_module.fail_json(msg="Invalid IP Address %s: %s" % (ip, e))
         ip_addrs.append(ip_parsed)
     return ip_addrs
-
diff --git a/roles/ipareplica/library/ipareplica_add_to_ipaservers.py b/roles/ipareplica/library/ipareplica_add_to_ipaservers.py
index 6c5a0963f81c847b574951450db501477e84d267..edc19504e5e90aa8d22634743974e934f87f85e7 100644
--- a/roles/ipareplica/library/ipareplica_add_to_ipaservers.py
+++ b/roles/ipareplica/library/ipareplica_add_to_ipaservers.py
@@ -62,8 +62,19 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+import six
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, paths,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_remote_api, api
+)
+
+if six.PY3:
+    unicode = str
+
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_create_ipa_conf.py b/roles/ipareplica/library/ipareplica_create_ipa_conf.py
index 9f13432a9128a1d22a526b8b44b54b0645fd44ef..076acc771840ca42bb59fb33b8728c7e00c613b1 100644
--- a/roles/ipareplica/library/ipareplica_create_ipa_conf.py
+++ b/roles/ipareplica/library/ipareplica_create_ipa_conf.py
@@ -131,8 +131,15 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths,
+    ansible_module_get_parsed_ip_addresses, sysrestore,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, create_ipa_conf
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_custodia_import_dm_password.py b/roles/ipareplica/library/ipareplica_custodia_import_dm_password.py
index d32ca36fc00e37035703cf294f41093483ccce93..4701ec659d197914b40c4b88faf7b016c82baf08 100644
--- a/roles/ipareplica/library/ipareplica_custodia_import_dm_password.py
+++ b/roles/ipareplica/library/ipareplica_custodia_import_dm_password.py
@@ -86,8 +86,15 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+import inspect
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, redirect_stdout, custodiainstance
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_ds_apply_updates.py b/roles/ipareplica/library/ipareplica_ds_apply_updates.py
index f0ab776fdcc7380c907b30dccfbf6d24f5d3f781..1651335b38d257e6ffdf6ee7ea07f4d9adfb4f6b 100644
--- a/roles/ipareplica/library/ipareplica_ds_apply_updates.py
+++ b/roles/ipareplica/library/ipareplica_ds_apply_updates.py
@@ -47,8 +47,15 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import  (
+    AnsibleModuleLog, installer, DN, paths,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, api, redirect_stdout,
+    replica_ds_init_info, dsinstance, upgradeinstance, installutils
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_ds_enable_ssl.py b/roles/ipareplica/library/ipareplica_ds_enable_ssl.py
index 49237430b872c8331b533064b35d44247a573c57..1a265085b199fa430628a16ee7cc6bbe2572e92c 100644
--- a/roles/ipareplica/library/ipareplica_ds_enable_ssl.py
+++ b/roles/ipareplica/library/ipareplica_ds_enable_ssl.py
@@ -86,8 +86,15 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, api, redirect_stdout,
+    replica_ds_init_info
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_enable_ipa.py b/roles/ipareplica/library/ipareplica_enable_ipa.py
index 908da223ef3a2acd889fdd1d4061378a3105e583..82ae2e6ea377232f008110fc7e810b4a57aae040 100644
--- a/roles/ipareplica/library/ipareplica_enable_ipa.py
+++ b/roles/ipareplica/library/ipareplica_enable_ipa.py
@@ -65,8 +65,15 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, api, redirect_stdout, service,
+    find_providing_servers, services
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_install_ca_certs.py b/roles/ipareplica/library/ipareplica_install_ca_certs.py
index 71f296e09e8bbe08b0671778547c77af3cbc9050..8912860899ffdb1ba0e92297d2c583278504401e 100644
--- a/roles/ipareplica/library/ipareplica_install_ca_certs.py
+++ b/roles/ipareplica/library/ipareplica_install_ca_certs.py
@@ -98,8 +98,16 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths,
+    ansible_module_get_parsed_ip_addresses,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, api, redirect_stdout, ipaldap,
+    install_ca_cert
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_krb_enable_ssl.py b/roles/ipareplica/library/ipareplica_krb_enable_ssl.py
index 58d8301290720c001360acdaf48ecad4cae9004b..6df2745727c07d16324970448228fef52592fe77 100644
--- a/roles/ipareplica/library/ipareplica_krb_enable_ssl.py
+++ b/roles/ipareplica/library/ipareplica_krb_enable_ssl.py
@@ -47,8 +47,14 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths, sysrestore,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, api, krbinstance, redirect_stdout
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_master_password.py b/roles/ipareplica/library/ipareplica_master_password.py
index 19ebc3a7199dc3320c779eb192a7dcb570ab9a84..7f3a2d5fab0cec0d83864d7d98aa1d222ab733e3 100644
--- a/roles/ipareplica/library/ipareplica_master_password.py
+++ b/roles/ipareplica/library/ipareplica_master_password.py
@@ -51,10 +51,10 @@ password:
   returned: always
 '''
 
-import os
-
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    ipa_generate_password
+)
 
 def main():
     module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_prepare.py b/roles/ipareplica/library/ipareplica_prepare.py
index a9b1bcd19bb9df0d0474c67104dee2acfb66370e..22439fb1bc2996ff173f6e98c5b91be965c09c85 100644
--- a/roles/ipareplica/library/ipareplica_prepare.py
+++ b/roles/ipareplica/library/ipareplica_prepare.py
@@ -133,8 +133,27 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+import tempfile
+import traceback
+import six
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, options, installer, DN, paths, sysrestore,
+    ansible_module_get_parsed_ip_addresses, Env, ipautil, ipaldap,
+    installutils, ReplicaConfig, load_pkcs12, kinit_keytab, create_api,
+    rpc_client, check_remote_version, parse_version, check_remote_fips_mode,
+    ReplicationManager, promotion_check_ipa_domain, current_domain_level,
+    check_domain_level_is_supported, errors, ScriptError,
+    logger, check_dns_resolution, service, find_providing_server, ca, kra,
+    dns, no_matching_interface_for_ip_address_warning, adtrust,
+    constants, api, redirect_stdout, replica_conn_check, tasks
+)
+
+if six.PY3:
+    unicode = str
+
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_promote_openldap_conf.py b/roles/ipareplica/library/ipareplica_promote_openldap_conf.py
index 6327badd397496a346bb9c1e0e1896e878113e1b..50adabc242852467c85045267eeac63f486b7b0d 100644
--- a/roles/ipareplica/library/ipareplica_promote_openldap_conf.py
+++ b/roles/ipareplica/library/ipareplica_promote_openldap_conf.py
@@ -65,8 +65,14 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths, # sysrestore,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, redirect_stdout, promote_openldap_conf
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_promote_sssd.py b/roles/ipareplica/library/ipareplica_promote_sssd.py
index 8fc71bf91490cc10495c916c2939c0e04f327bcd..f3fe67e57c9213ba3fb91b19da9f30a36da04225 100644
--- a/roles/ipareplica/library/ipareplica_promote_sssd.py
+++ b/roles/ipareplica/library/ipareplica_promote_sssd.py
@@ -65,8 +65,14 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, redirect_stdout, promote_sssd
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_restart_kdc.py b/roles/ipareplica/library/ipareplica_restart_kdc.py
index e766ff85c9653fd2867eae0634cc4186b99c6c8c..56934184286ac1f20928d85e9b557895da02afb8 100644
--- a/roles/ipareplica/library/ipareplica_restart_kdc.py
+++ b/roles/ipareplica/library/ipareplica_restart_kdc.py
@@ -47,8 +47,15 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths, sysrestore,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, api, redirect_stdout, service,
+    krbinstance
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_setup_adtrust.py b/roles/ipareplica/library/ipareplica_setup_adtrust.py
index 93b7ac78e35a16be9661fdab8fca5191c6c138e0..ec4fd58de12545c9533e90a1e334fc7f806a9587 100644
--- a/roles/ipareplica/library/ipareplica_setup_adtrust.py
+++ b/roles/ipareplica/library/ipareplica_setup_adtrust.py
@@ -65,8 +65,14 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths, sysrestore,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, api, redirect_stdout, adtrust
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_setup_ca.py b/roles/ipareplica/library/ipareplica_setup_ca.py
index 3291facc5c510cc2fcf25128a6a24e8d7f4aa040..b7da5aa214f3b8a0913c3c72c72cafc89340d8fa 100644
--- a/roles/ipareplica/library/ipareplica_setup_ca.py
+++ b/roles/ipareplica/library/ipareplica_setup_ca.py
@@ -104,8 +104,16 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths,
+    ansible_module_get_parsed_ip_addresses,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, api, redirect_stdout, ca,
+    custodiainstance
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_setup_certmonger.py b/roles/ipareplica/library/ipareplica_setup_certmonger.py
index 264498b91ddbe9385ef76516423bd6ced84d34f9..412c5bc8079547b34d955036c5c7166919f284f3 100644
--- a/roles/ipareplica/library/ipareplica_setup_certmonger.py
+++ b/roles/ipareplica/library/ipareplica_setup_certmonger.py
@@ -48,7 +48,9 @@ RETURN = '''
 '''
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, redirect_stdout, configure_certmonger
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_setup_custodia.py b/roles/ipareplica/library/ipareplica_setup_custodia.py
index f0ecb2b0edf9d0ca1c061e1c6ac9b8e9051f3b6a..cde1580e996902db1bd5707499d3da23f4490909 100644
--- a/roles/ipareplica/library/ipareplica_setup_custodia.py
+++ b/roles/ipareplica/library/ipareplica_setup_custodia.py
@@ -86,8 +86,14 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, api, redirect_stdout, custodiainstance
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_setup_dns.py b/roles/ipareplica/library/ipareplica_setup_dns.py
index 980c4c892a4f50bf74cf2eb4e976b8dbca3453fe..25f6bd624b481c2713af058546882b1096f1dce5 100644
--- a/roles/ipareplica/library/ipareplica_setup_dns.py
+++ b/roles/ipareplica/library/ipareplica_setup_dns.py
@@ -68,8 +68,15 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, api, redirect_stdout, dns,
+    ansible_module_get_parsed_ip_addresses
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_setup_ds.py b/roles/ipareplica/library/ipareplica_setup_ds.py
index 551750563216f3aefbf38ab0d56621fccb83237a..4bfb4cc318caa2477342f3595e68479c5c18f64a 100644
--- a/roles/ipareplica/library/ipareplica_setup_ds.py
+++ b/roles/ipareplica/library/ipareplica_setup_ds.py
@@ -134,8 +134,17 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+import inspect
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths, sysrestore,
+    ansible_module_get_parsed_ip_addresses,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, redirect_stdout, ipaldap,
+    install_replica_ds, install_dns_records, ntpinstance, ScriptError
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_setup_http.py b/roles/ipareplica/library/ipareplica_setup_http.py
index 91167ac7ab8ade13f897ea6f405948ebebf61c1f..b644239ed7d115fb4e74402441e660d9a541b14c 100644
--- a/roles/ipareplica/library/ipareplica_setup_http.py
+++ b/roles/ipareplica/library/ipareplica_setup_http.py
@@ -83,8 +83,16 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+import inspect
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths, sysrestore,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, api, redirect_stdout, create_ipa_conf,
+    install_http
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_setup_kra.py b/roles/ipareplica/library/ipareplica_setup_kra.py
index 4c38572ddcbd5a6073a7f20257916b6bfbff30e4..d5dd28613034ee4aa1237b61e97517b91cb0bc8b 100644
--- a/roles/ipareplica/library/ipareplica_setup_kra.py
+++ b/roles/ipareplica/library/ipareplica_setup_kra.py
@@ -82,8 +82,16 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths,
+    ansible_module_get_parsed_ip_addresses,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, api, redirect_stdout, custodiainstance,
+    kra
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_setup_krb.py b/roles/ipareplica/library/ipareplica_setup_krb.py
index ba27fc693600e17fa8a7484ed0e03ce69f29ce2d..5abb0f0bd949052ea9211d4cbf410cb67f3eebc3 100644
--- a/roles/ipareplica/library/ipareplica_setup_krb.py
+++ b/roles/ipareplica/library/ipareplica_setup_krb.py
@@ -71,8 +71,16 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+import inspect
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths, sysrestore,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, # gen_remote_api,
+    api, redirect_stdout, install_krb
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_setup_otpd.py b/roles/ipareplica/library/ipareplica_setup_otpd.py
index 743e53fc26da8e450f7f8a2d4b0dd7703cba8bda..abf827175ec746609cd0b59a6f0b126d8e2abd59 100644
--- a/roles/ipareplica/library/ipareplica_setup_otpd.py
+++ b/roles/ipareplica/library/ipareplica_setup_otpd.py
@@ -77,8 +77,15 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, installer, DN, paths,
+    gen_env_boostrap_finalize_core, constants, api_bootstrap_finalize,
+    gen_ReplicaConfig, gen_remote_api, api, redirect_stdout, otpdinstance,
+    ipautil
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/library/ipareplica_test.py b/roles/ipareplica/library/ipareplica_test.py
index 973011f91a06f40d683ba2222c6d80b0e24279bc..5c38c8eff3da56ca53aa894ce1c90455ce6bf3a7 100644
--- a/roles/ipareplica/library/ipareplica_test.py
+++ b/roles/ipareplica/library/ipareplica_test.py
@@ -45,12 +45,16 @@ RETURN = '''
 '''
 
 import os
-import sys
-import logging
-import tempfile, shutil
+import inspect
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_replica import *
+from ansible.module_utils.ansible_ipa_replica import (
+    AnsibleModuleLog, options, installer, paths, sysrestore,
+    ansible_module_get_parsed_ip_addresses, service,
+    redirect_stdout, create_ipa_conf, ipautil,
+    x509, validate_domain_name, common_check,
+    IPA_PYTHON_VERSION
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipareplica/module_utils/ansible_ipa_replica.py b/roles/ipareplica/module_utils/ansible_ipa_replica.py
index d27aa9fe85c352167836fc42cf89b59b57f655a1..07edf727ebb9ed3a19e1ad1f8817c063844d9d56 100644
--- a/roles/ipareplica/module_utils/ansible_ipa_replica.py
+++ b/roles/ipareplica/module_utils/ansible_ipa_replica.py
@@ -55,7 +55,6 @@ if NUM_VERSION >= 40600:
     import traceback
 
     from pkg_resources import parse_version
-    import six
 
     from ipaclient.install.ipachangeconf import IPAChangeConf
     from ipalib.install import certstore, sysrestore
@@ -105,9 +104,6 @@ if NUM_VERSION >= 40600:
     import SSSDConfig
     from subprocess import CalledProcessError
 
-    if six.PY3:
-        unicode = str
-
     try:
         from ipaclient.install import timeconf
         time_service = "chronyd"
diff --git a/roles/ipaserver/library/ipaserver_enable_ipa.py b/roles/ipaserver/library/ipaserver_enable_ipa.py
index 38a77d8c9daee7a106430cb0685033739552a0ea..a0aa9620358bdbc569c6ae25136a3987821af563 100644
--- a/roles/ipaserver/library/ipaserver_enable_ipa.py
+++ b/roles/ipaserver/library/ipaserver_enable_ipa.py
@@ -47,7 +47,10 @@ RETURN = '''
 '''
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_server import *
+from ansible.module_utils.ansible_ipa_server import (
+    AnsibleModuleLog, options, paths, api, sysrestore, tasks,
+    service, bindinstance, redirect_stdout, services
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipaserver/library/ipaserver_load_cache.py b/roles/ipaserver/library/ipaserver_load_cache.py
index 883cdf1228522c75576fede5ca049e843bb1cc2e..00b5b5ff9ec660c086ee411b362b120037d3cfb8 100644
--- a/roles/ipaserver/library/ipaserver_load_cache.py
+++ b/roles/ipaserver/library/ipaserver_load_cache.py
@@ -47,8 +47,13 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_server import *
+from ansible.module_utils.ansible_ipa_server import (
+    #AnsibleModuleLog,
+    options, paths, read_cache
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipaserver/library/ipaserver_master_password.py b/roles/ipaserver/library/ipaserver_master_password.py
index 85153e9874e0b07dbe347546409e20817e0791b3..1675b6cdb0f3279282351d5b7b4212ce2dcc4d5e 100644
--- a/roles/ipaserver/library/ipaserver_master_password.py
+++ b/roles/ipaserver/library/ipaserver_master_password.py
@@ -54,7 +54,9 @@ password:
 import os
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_server import *
+from ansible.module_utils.ansible_ipa_server import (
+    options, paths, read_cache, ipa_generate_password
+)
 
 def main():
     module = AnsibleModule(
diff --git a/roles/ipaserver/library/ipaserver_prepare.py b/roles/ipaserver/library/ipaserver_prepare.py
index a598accbfdcc6d2493b6dca9620f3c53e23f7c0b..649b2ca9eb2bc077ef1c1c1f88054ad6449b8fd7 100644
--- a/roles/ipaserver/library/ipaserver_prepare.py
+++ b/roles/ipaserver/library/ipaserver_prepare.py
@@ -74,8 +74,17 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_server import *
+from ansible.module_utils.ansible_ipa_server import (
+    AnsibleModuleLog, options, sysrestore, paths,
+    ansible_module_get_parsed_ip_addresses,
+    redirect_stdout, adtrust, api, default_subject_base,
+    default_ca_subject_dn, ipautil, installutils, ca, kra, dns,
+    get_server_ip_address, no_matching_interface_for_ip_address_warning,
+    services, logger, tasks, update_hosts_file, ScriptError
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipaserver/library/ipaserver_set_ds_password.py b/roles/ipaserver/library/ipaserver_set_ds_password.py
index c9bf7c770b1941115d82b317d8fe7cf2aaf81700..c18be10891f25e7491466cda1a0c3c81ca4b5fd9 100644
--- a/roles/ipaserver/library/ipaserver_set_ds_password.py
+++ b/roles/ipaserver/library/ipaserver_set_ds_password.py
@@ -47,7 +47,11 @@ RETURN = '''
 '''
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_server import *
+from ansible.module_utils.ansible_ipa_server import (
+    MAX_DOMAIN_LEVEL, AnsibleModuleLog, options, sysrestore, paths,
+    api_Backend_ldap2, ds_init_info, redirect_stdout
+)
+
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipaserver/library/ipaserver_setup_adtrust.py b/roles/ipaserver/library/ipaserver_setup_adtrust.py
index 454a852350bacada03f8b197a163f6f77f813c53..7c85d87503c323254f9fdd824dc26533c1e3f184 100644
--- a/roles/ipaserver/library/ipaserver_setup_adtrust.py
+++ b/roles/ipaserver/library/ipaserver_setup_adtrust.py
@@ -47,7 +47,10 @@ RETURN = '''
 '''
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_server import *
+from ansible.module_utils.ansible_ipa_server import (
+    AnsibleModuleLog, options, sysrestore, paths,
+    api_Backend_ldap2, redirect_stdout, adtrust, api
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipaserver/library/ipaserver_setup_ca.py b/roles/ipaserver/library/ipaserver_setup_ca.py
index 14b8bae03c7bcf6ec1001be8233ecad660b6fa52..f13fb2656647cd59cceac41727fa150b98ada8e2 100644
--- a/roles/ipaserver/library/ipaserver_setup_ca.py
+++ b/roles/ipaserver/library/ipaserver_setup_ca.py
@@ -76,8 +76,15 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import os
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_server import *
+from ansible.module_utils.ansible_ipa_server import (
+    AnsibleModuleLog, options, sysrestore, paths,
+    ansible_module_get_parsed_ip_addresses,
+    api_Backend_ldap2, redirect_stdout, ca, installutils, ds_init_info,
+    custodiainstance, write_cache, x509
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipaserver/library/ipaserver_setup_custodia.py b/roles/ipaserver/library/ipaserver_setup_custodia.py
index b84b5394db286816025d0a3e12cb0419cc7384b9..2f6392c1632aa4211ee6eeb9c6c420fd9fd61406 100644
--- a/roles/ipaserver/library/ipaserver_setup_custodia.py
+++ b/roles/ipaserver/library/ipaserver_setup_custodia.py
@@ -50,7 +50,11 @@ RETURN = '''
 '''
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_server import *
+from ansible.module_utils.ansible_ipa_server import  (
+    AnsibleModuleLog, options, # sysrestore, paths,
+    api_Backend_ldap2,
+    custodiainstance, redirect_stdout
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipaserver/library/ipaserver_setup_dns.py b/roles/ipaserver/library/ipaserver_setup_dns.py
index 1255a00ee379e37353eb33156c396a6477988350..d079ecd67d9c6cabeaacc96b02c1056e0b1be034 100644
--- a/roles/ipaserver/library/ipaserver_setup_dns.py
+++ b/roles/ipaserver/library/ipaserver_setup_dns.py
@@ -54,7 +54,11 @@ RETURN = '''
 '''
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_server import *
+from ansible.module_utils.ansible_ipa_server import (
+    AnsibleModuleLog, options, paths, dns,
+    ansible_module_get_parsed_ip_addresses, sysrestore, api_Backend_ldap2,
+    redirect_stdout, bindinstance
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipaserver/library/ipaserver_setup_ds.py b/roles/ipaserver/library/ipaserver_setup_ds.py
index 6663d19f8a11b80f4ee07d4323d9fe37d1eb0869..719b12c26b6c177d25a98f42694f559e5280160a 100644
--- a/roles/ipaserver/library/ipaserver_setup_ds.py
+++ b/roles/ipaserver/library/ipaserver_setup_ds.py
@@ -59,7 +59,11 @@ RETURN = '''
 '''
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_server import *
+from ansible.module_utils.ansible_ipa_server import (
+    AnsibleModuleLog, options, sysrestore, paths,
+    api_Backend_ldap2, redirect_stdout, api, NUM_VERSION, tasks,
+    dsinstance, ntpinstance, IPAAPI_USER
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipaserver/library/ipaserver_setup_http.py b/roles/ipaserver/library/ipaserver_setup_http.py
index be6e3408fa9061eaca016a6ebb0b018eb934f3ba..7de76199c30fb52c0fed56fcba0f34fc0c2986c4 100644
--- a/roles/ipaserver/library/ipaserver_setup_http.py
+++ b/roles/ipaserver/library/ipaserver_setup_http.py
@@ -47,7 +47,12 @@ RETURN = '''
 '''
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_server import *
+from ansible.module_utils.ansible_ipa_server import (
+    AnsibleModuleLog, options, sysrestore, paths,
+    ansible_module_get_parsed_ip_addresses,
+    api_Backend_ldap2, redirect_stdout, ds_init_info,
+    krbinstance, httpinstance, ca, service, tasks
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipaserver/library/ipaserver_setup_kra.py b/roles/ipaserver/library/ipaserver_setup_kra.py
index fd7429c41e212ed5e97af7916a7ac398d0a30d6d..9da8b8414c247d8a806be875e1d6b82b6c66bdcb 100644
--- a/roles/ipaserver/library/ipaserver_setup_kra.py
+++ b/roles/ipaserver/library/ipaserver_setup_kra.py
@@ -47,7 +47,10 @@ RETURN = '''
 '''
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_server import *
+from ansible.module_utils.ansible_ipa_server import (
+    AnsibleModuleLog, options,
+    api_Backend_ldap2, redirect_stdout, api, custodiainstance, kra
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipaserver/library/ipaserver_setup_krb.py b/roles/ipaserver/library/ipaserver_setup_krb.py
index e16f6fc81a6fd60b4f62bc15f3e59bc0e40b275a..d2f3663b20002aa38edfa4bb8889397494ebd3a5 100644
--- a/roles/ipaserver/library/ipaserver_setup_krb.py
+++ b/roles/ipaserver/library/ipaserver_setup_krb.py
@@ -47,7 +47,11 @@ RETURN = '''
 '''
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_server import *
+from ansible.module_utils.ansible_ipa_server import (
+    AnsibleModuleLog, options, sysrestore, paths,
+    ansible_module_get_parsed_ip_addresses,
+    api_Backend_ldap2, redirect_stdout, krbinstance
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipaserver/library/ipaserver_setup_ntp.py b/roles/ipaserver/library/ipaserver_setup_ntp.py
index 64383b2ff242484b2a15ea2dd0f5c46667753342..a3a6954e6dcd116674d0550f3be8be0bbab69ad7 100644
--- a/roles/ipaserver/library/ipaserver_setup_ntp.py
+++ b/roles/ipaserver/library/ipaserver_setup_ntp.py
@@ -46,8 +46,13 @@ EXAMPLES = '''
 RETURN = '''
 '''
 
+import inspect
+
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_server import *
+from ansible.module_utils.ansible_ipa_server import (
+    AnsibleModuleLog, options, sysrestore, paths,
+    redirect_stdout, time_service, sync_time, ntpinstance, timeconf
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipaserver/library/ipaserver_setup_otpd.py b/roles/ipaserver/library/ipaserver_setup_otpd.py
index 3db6cfb7bd15244a4ee8998a635a6d51d6959664..d5aa60750ad40e71451d9feda59552a48350d9b5 100644
--- a/roles/ipaserver/library/ipaserver_setup_otpd.py
+++ b/roles/ipaserver/library/ipaserver_setup_otpd.py
@@ -47,7 +47,10 @@ RETURN = '''
 '''
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_server import *
+from ansible.module_utils.ansible_ipa_server import (
+    AnsibleModuleLog, options, # sysrestore, paths,
+    api_Backend_ldap2, redirect_stdout, otpdinstance, ipautil
+)
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipaserver/library/ipaserver_test.py b/roles/ipaserver/library/ipaserver_test.py
index 88b5db74cae9c3de469561b151afcb4bcac1bba0..4a6700ded85a784d3de5c3b8daf2f0977f1722c1 100644
--- a/roles/ipaserver/library/ipaserver_test.py
+++ b/roles/ipaserver/library/ipaserver_test.py
@@ -46,11 +46,23 @@ RETURN = '''
 
 import os
 import sys
-import logging
-import tempfile, shutil
+import six
+import inspect
 
 from ansible.module_utils.basic import AnsibleModule
-from ansible.module_utils.ansible_ipa_server import *
+from ansible.module_utils.ansible_ipa_server import (
+    AnsibleModuleLog, options, adtrust_imported, kra_imported, PKIIniLoader,
+    random, MIN_DOMAIN_LEVEL, MAX_DOMAIN_LEVEL, check_zone_overlap,
+    redirect_stdout, validate_dm_password, validate_admin_password,
+    NUM_VERSION, is_ipa_configured, sysrestore, paths, bindinstance,
+    read_cache, ca, tasks, check_ldap_conf, timeconf, httpinstance,
+    check_dirsrv, ScriptError, get_fqdn, verify_fqdn, BadHostError,
+    validate_domain_name, load_pkcs12, IPA_PYTHON_VERSION
+)
+
+if six.PY3:
+    unicode = str
+
 
 def main():
     ansible_module = AnsibleModule(
diff --git a/roles/ipaserver/module_utils/ansible_ipa_server.py b/roles/ipaserver/module_utils/ansible_ipa_server.py
index e19eb2ec5b636dcea8003aa472321e0040545103..2eba3ca0914b813cf012e0556637430a82b81371 100644
--- a/roles/ipaserver/module_utils/ansible_ipa_server.py
+++ b/roles/ipaserver/module_utils/ansible_ipa_server.py
@@ -50,8 +50,6 @@ if NUM_VERSION >= 40500:
     import textwrap
     import random
 
-    import six
-
     if NUM_VERSION >= 40690:
         from ipaclient.install.ipachangeconf import IPAChangeConf
     from ipalib.install import certmonger, sysrestore
@@ -66,9 +64,12 @@ if NUM_VERSION >= 40500:
     from ipaplatform.paths import paths
     from ipaplatform.tasks import tasks
     from ipalib import api, errors, x509
-    from ipalib.constants import DOMAIN_LEVEL_0, MIN_DOMAIN_LEVEL, MAX_DOMAIN_LEVEL
-    if NUM_VERSION == 40504:
+    from ipalib.constants import DOMAIN_LEVEL_0, MIN_DOMAIN_LEVEL, \
+        MAX_DOMAIN_LEVEL
+    try:
         from ipalib.constants import IPAAPI_USER
+    except ImportError:
+        IPAAPI_USER = None
     from ipalib.util import (
         validate_domain_name,
         no_matching_interface_for_ip_address_warning,
@@ -87,6 +88,7 @@ if NUM_VERSION >= 40500:
             from ipaclient import ntpconf as timeconf
         from ipaserver.install import ntpinstance
         time_service = "ntpd"
+        sync_time = None
     from ipaserver.install import (
         adtrust, bindinstance, ca, dns, dsinstance,
         httpinstance, installutils, kra, krbinstance,
@@ -116,9 +118,6 @@ if NUM_VERSION >= 40500:
         def default_ca_subject_dn(subject_base):
             return DN(('CN', 'Certificate Authority'), subject_base)
 
-    if six.PY3:
-        unicode = str
-
     try:
         from ipaserver.install import adtrustinstance
         _server_trust_ad_installed = True