Skip to content

pip_parse: requirements_by_platform: allow custom defined platforms #2548

Open
@hariom-qure

Description

@hariom-qure

Allow custom platforms to be added to pip_parse

We are trying to install PyTorch and PyTorch has a slightly different way for installing.

The pip command for installing pytorch+linux+cpu:

pip3 install torch --index-url https://download.pytorch.org/whl/cpu

While for a specific GPU version:

pip3 install torch --index-url https://download.pytorch.org/whl/cu121

So we have different requirements files for linux CPU and linux GPU combinations. In the code, I can see that rules_python is using the requirements file depending on the current host that its running, code is here

How do we pass custom platforms? Something like this

constraint_setting(name = "gpu")

constraint_value(
    name = "gpu_cu_12_1",
    constraint_setting = ":gpu",
)

constraint_value(
    name = "gpu_none",
    constraint_setting = ":gpu",
)

platform(
    name = "lol_x86_64",
    constraint_values = [
        "@platforms//os:linux",
        "@platforms//cpu:x86_64",
        ":gpu_none",
    ],
)

platform(
    name = "linux_x86_64_cu_12_1",
    constraint_values = [
        "@platforms//os:linux",
        "@platforms//cpu:x86_64",
        ":gpu_cu_12_1",
    ],
)

Versions

bazel: 6.2.0
rules_python: 0.40.0

Thanks!

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions