load("@rules_python//python:defs.bzl", "py_binary", "py_test")
load("@rules_python//python:pip.bzl", "compile_pip_requirements")
load("@rules_python//python/entry_points:py_console_script_binary.bzl", "py_console_script_binary")

# Toolchain setup, this is optional.
# Demonstrate that we can use the same python interpreter for the toolchain and executing pip in pip install (see WORKSPACE).
#
#load("@rules_python//python:defs.bzl", "py_runtime_pair")
#
#py_runtime(
#    name = "python3_runtime",
#    files = ["@python_interpreter//:files"],
#    interpreter = "@python_interpreter//:python_bin",
#    python_version = "PY3",
#    visibility = ["//visibility:public"],
#)
#
#py_runtime_pair(
#    name = "my_py_runtime_pair",
#    py2_runtime = None,
#    py3_runtime = ":python3_runtime",
#)
#
#toolchain(
#    name = "my_py_toolchain",
#    toolchain = ":my_py_runtime_pair",
#    toolchain_type = "@rules_python//python:toolchain_type",
#)
# End of toolchain setup.

py_binary(
    name = "main",
    srcs = ["main.py"],
    deps = [
        "@pypi//requests:pkg",
        "@pypi//sphinx:pkg",
        "@pypi//sphinxcontrib_serializinghtml:pkg",
    ],
)

py_test(
    name = "test",
    srcs = ["test.py"],
    deps = [":main"],
)

# For pip dependencies which have entry points, the `entry_point` macro can be
# used from the generated `pip_parse` repository to access a runnable binary.

py_console_script_binary(
    name = "yamllint",
    pkg = "@pypi//yamllint",
)

# This rule adds a convenient way to update the requirements file.
compile_pip_requirements(
    name = "requirements",
    src = "requirements.in",
    requirements_txt = "requirements_lock.txt",
    requirements_windows = "requirements_windows.txt",
)

# Test the use of all pip_parse utilities in a single py_test
py_test(
    name = "pip_parse_test",
    srcs = ["pip_parse_test.py"],
    data = [
        ":yamllint",
        "@pypi//requests:dist_info",
        "@pypi//s3cmd:data",
    ],
    env = {
        "WHEEL_DATA_CONTENTS": "$(rootpaths @pypi//s3cmd:data)",
        "WHEEL_DIST_INFO_CONTENTS": "$(rootpaths @pypi//requests:dist_info)",
        "YAMLLINT_ENTRY_POINT": "$(rlocationpath :yamllint)",
    },
    deps = ["@rules_python//python/runfiles"],
)
