[metadata]
name = ansible-freeipa
summary = Ansible roles for FreeIPA
description-file =
    README.md
home-page = https://github.com/freeipa/ansible-freeipa
classifier =
    Intended Audience :: Developers
    Intended Audience :: System Administrators
    Operating System :: POSIX :: Linux

[pbr]
warnerrors = True

[wheel]
universal = 1

[files]
data_files =
    /usr/share/ansible/roles/ipaclient = roles/ipaclient/*
    /usr/share/ansible/roles/ipaserver = roles/ipaserver/*
    /usr/share/ansible/roles/ipareplica = roles/ipareplica/*

[flake8]
extend-ignore = E203, D1, D212, D203, D400, D401
exclude = .git,__pycache__,.tox,.venv,.cache,.ansible-freeipa-tests
per-file-ignores =
    plugins/*:E402
    roles/*:E402

[pydocstyle]
inherit = false
ignore = D1,D212,D203

[pylint.MASTER]
disable =
    consider-using-f-string,  # f-string is not supported on Python2
    unspecified-encoding, # open() does not provide `encoding` in Python2
    use-maxsplit-arg,
    redundant-u-string-prefix,
    c-extension-no-member,
    missing-module-docstring,
    missing-class-docstring,
    missing-function-docstring,
    wrong-import-order,
    ungrouped-imports,
    wrong-import-position,
    protected-access,
    no-name-in-module,
    too-many-arguments,
    too-many-statements,
    too-many-lines,
    raise-missing-from,
    duplicate-code,
    broad-except,
    too-many-branches,
    too-many-locals,
    fixme,
    use-dict-literal

[pylint.BASIC]
good-names =
    ex, i, j, k, Run, _, e, x, dn, cn, ip, os, unicode, __metaclass__, ds,
    dt, ca,
    # These are utils tools, and not part of the released collection.
    galaxyfy-playbook, galaxyfy-README, galaxyfy-module-EXAMPLES,
    module_EXAMPLES


[pylint.IMPORTS]
ignored-modules =
    ansible.errors, ansible.plugins.action,
    ansible.module_utils, ansible.module_utils.ansible_freeipa_module,
    dns,
    gssapi,
    ipalib, ipalib.config, ipalib.constants, ipalib.krb_utils, ipalib.errors,
    ipapython.ipautil, ipapython.dn, ipapython.version, ipapython.dnsutil,
    ipapython.ipa_log_manager, ipapython,
    ipaplatform, ipaplatform.paths, ipaplatform.tasks, ipapython.admintool,
    ipaserver.install.installutils, ipaserver.install.server.install,
    ipaserver.install,
    ipaclient.install.ipachangeconf, ipaclient.install.client,
    ipaserver.dcerpc,
    jinja2,
    os,
    SSSDConfig

[pylint.REFACTORING]
max-nested-blocks = 9

[pylint.FORMAT]
max-line-length = 80