def _config_file_path()

in azdev/operations/style.py [0:0]


def _config_file_path(style_type="pylint"):
    from configparser import NoSectionError
    try:
        cli_repo_path = get_azdev_config().get("cli", "repo_path")
    except NoSectionError:
        cli_repo_path = None
    try:
        ext_repo_path = get_azdev_config().get("ext", "repo_paths").split(',')[0]
    except NoSectionError:
        ext_repo_path = None

    if style_type not in ["pylint", "flake8"]:
        raise ValueError("style_tyle value allows only: pylint, flake8.")

    config_file_mapping = {
        "pylint": "pylintrc",
        "flake8": ".flake8",
    }
    default_config_file_mapping = {
        "cli": {
            "pylint": "cli_pylintrc",
            "flake8": "cli.flake8"
        },
        "ext": {
            "pylint": "ext_pylintrc",
            "flake8": "ext.flake8"
        }
    }

    if cli_repo_path:
        cli_config_path = os.path.join(cli_repo_path, config_file_mapping[style_type])
        if not os.path.exists(cli_config_path):
            cli_config_path = os.path.join(
                get_azdev_config_dir(),
                "config_files",
                default_config_file_mapping["cli"][style_type],
            )
    else:
        cli_config_path = os.path.join(
            get_azdev_config_dir(),
            "config_files",
            default_config_file_mapping["cli"][style_type],
        )

    if ext_repo_path:
        ext_config_path = os.path.join(ext_repo_path, config_file_mapping[style_type])
        if not os.path.exists(ext_config_path):
            ext_config_path = os.path.join(
                get_azdev_config_dir(),
                "config_files",
                default_config_file_mapping["ext"][style_type],
            )
    else:
        ext_config_path = os.path.join(
            get_azdev_config_dir(),
            "config_files",
            default_config_file_mapping["ext"][style_type],
        )

    return cli_config_path, ext_config_path