Skip to content
Snippets Groups Projects
Select Git revision
  • 07d91e02d18caef51a34a3c86ffb5b1b2af7c88a
  • master default protected
  • v1.15.0
  • v1.14.7
  • v1.14.6
  • v1.14.5
  • v1.14.4
  • v1.14.3
  • v1.14.2
  • v1.14.1
  • v1.14.0
  • v1.13.2
  • v1.13.1
  • v1.13.0
  • v1.12.1
  • v1.12.0
  • v1.11.1
  • v1.11.0
  • v1.10.0
  • v1.9.2
  • v1.9.1
  • v1.9.0
22 results

ansible_ipa_replica.py

Blame
  • facts.py 1.23 KiB
    import os
    
    
    def get_roles(dir):
        roles = []
    
        _rolesdir = "%s/roles/" % dir
        for _role in os.listdir(_rolesdir):
            _roledir = "%s/%s" % (_rolesdir, _role)
            if not os.path.isdir(_roledir) or \
               not os.path.isdir("%s/meta" % _roledir) or \
               not os.path.isdir("%s/tasks" % _roledir):
                continue
            roles.append(_role)
    
        return sorted(roles)
    
    
    def get_modules(dir):
        management_modules = []
        roles_modules = []
    
        for root, _dirs, files in os.walk(dir):
            if not root.startswith("%s/plugins/" % dir) and \
               not root.startswith("%s/roles/" % dir):
                continue
            for _file in files:
                if _file.endswith(".py"):
                    if root == "%s/plugins/modules" % dir:
                        management_modules.append(_file[:-3])
                    elif root.startswith("%s/roles/" % dir):
                        if root.endswith("/library"):
                            roles_modules.append(_file[:-3])
    
        return sorted(management_modules), sorted(roles_modules)
    
    
    BASE_DIR = os.path.abspath(os.path.dirname(__file__) + "/..")
    ROLES = get_roles(BASE_DIR)
    MANAGEMENT_MODULES, ROLES_MODULES = get_modules(BASE_DIR)
    ALL_MODULES = sorted(MANAGEMENT_MODULES + ROLES_MODULES)