aboutsummaryrefslogtreecommitdiff
path: root/tests/compile_pip_requirements/BUILD.bazel
blob: ad5ee1a9d70d3cc1163ee7b7b16a8fe416726476 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
load("@rules_python//python:pip.bzl", "compile_pip_requirements")

genrule(
    name = "generate_requirements_extra_in",
    srcs = [],
    outs = ["requirements_extra.in"],
    cmd = "echo 'setuptools~=65.6.3' > $@",
)

genrule(
    name = "generate_requirements_in",
    srcs = [],
    outs = ["requirements.in"],
    cmd = """
cat > $@ <<EOF
-r requirements_extra.in
pip~=22.3.1
EOF
""",
)

compile_pip_requirements(
    name = "requirements",
    data = [
        "requirements.in",
        "requirements_extra.in",
    ],
    extra_args = [
        "--allow-unsafe",
        "--resolver=backtracking",
    ],
    requirements_in = "requirements.txt",
    requirements_txt = "requirements_lock.txt",
)

compile_pip_requirements(
    name = "requirements_nohashes",
    data = [
        "requirements.in",
        "requirements_extra.in",
    ],
    extra_args = [
        "--allow-unsafe",
        "--resolver=backtracking",
    ],
    generate_hashes = False,
    requirements_in = "requirements.txt",
    requirements_txt = "requirements_nohashes_lock.txt",
)

genrule(
    name = "generate_os_specific_requirements_in",
    srcs = [],
    outs = ["requirements_os_specific.in"],
    cmd = """
cat > $@ <<EOF
pip==22.3.0 ; sys_platform == "linux"
pip==22.2.2 ; sys_platform == "darwin"
pip==22.2.1 ; sys_platform == "win32"
EOF
""",
)

compile_pip_requirements(
    name = "os_specific_requirements",
    data = [
        "requirements_extra.in",
        "requirements_os_specific.in",
    ],
    extra_args = [
        "--allow-unsafe",
        "--resolver=backtracking",
    ],
    requirements_darwin = "requirements_lock_darwin.txt",
    requirements_in = "requirements_os_specific.in",
    requirements_linux = "requirements_lock_linux.txt",
    requirements_txt = "requirements_lock.txt",
    requirements_windows = "requirements_lock_windows.txt",
)