xref: /aosp_15_r20/external/pigweed/pw_env_setup/py/BUILD.bazel (revision 61c4878ac05f98d0ceed94b57d316916de578985)
1*61c4878aSAndroid Build Coastguard Worker# Copyright 2024 The Pigweed Authors
2*61c4878aSAndroid Build Coastguard Worker#
3*61c4878aSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License"); you may not
4*61c4878aSAndroid Build Coastguard Worker# use this file except in compliance with the License. You may obtain a copy of
5*61c4878aSAndroid Build Coastguard Worker# the License at
6*61c4878aSAndroid Build Coastguard Worker#
7*61c4878aSAndroid Build Coastguard Worker#     https://www.apache.org/licenses/LICENSE-2.0
8*61c4878aSAndroid Build Coastguard Worker#
9*61c4878aSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
10*61c4878aSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11*61c4878aSAndroid Build Coastguard Worker# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12*61c4878aSAndroid Build Coastguard Worker# License for the specific language governing permissions and limitations under
13*61c4878aSAndroid Build Coastguard Worker# the License.
14*61c4878aSAndroid Build Coastguard Worker
15*61c4878aSAndroid Build Coastguard Workerload("@rules_python//python:defs.bzl", "py_library")
16*61c4878aSAndroid Build Coastguard Workerload("//pw_build:python.bzl", "pw_py_test")
17*61c4878aSAndroid Build Coastguard Worker
18*61c4878aSAndroid Build Coastguard Workerpackage(default_visibility = ["//visibility:public"])
19*61c4878aSAndroid Build Coastguard Worker
20*61c4878aSAndroid Build Coastguard Workerlicenses(["notice"])
21*61c4878aSAndroid Build Coastguard Worker
22*61c4878aSAndroid Build Coastguard Workerexports_files([
23*61c4878aSAndroid Build Coastguard Worker    "pw_env_setup/cipd_setup/.cipd_version",
24*61c4878aSAndroid Build Coastguard Worker    "pw_env_setup/cipd_setup/.cipd_version.digests",
25*61c4878aSAndroid Build Coastguard Worker    "pw_env_setup/virtualenv_setup/constraint.list",
26*61c4878aSAndroid Build Coastguard Worker    "pw_env_setup/virtualenv_setup/constraint_hashes_darwin.list",
27*61c4878aSAndroid Build Coastguard Worker    "pw_env_setup/virtualenv_setup/constraint_hashes_linux.list",
28*61c4878aSAndroid Build Coastguard Worker    "pw_env_setup/virtualenv_setup/constraint_hashes_windows.list",
29*61c4878aSAndroid Build Coastguard Worker    "pw_env_setup/virtualenv_setup/pigweed_upstream_requirements.txt",
30*61c4878aSAndroid Build Coastguard Worker    "pw_env_setup/virtualenv_setup/python_base_requirements.txt",
31*61c4878aSAndroid Build Coastguard Worker    "pw_env_setup/virtualenv_setup/upstream_requirements_darwin_lock.txt",
32*61c4878aSAndroid Build Coastguard Worker    "pw_env_setup/virtualenv_setup/upstream_requirements_linux_lock.txt",
33*61c4878aSAndroid Build Coastguard Worker    "pw_env_setup/virtualenv_setup/upstream_requirements_windows_lock.txt",
34*61c4878aSAndroid Build Coastguard Worker] + glob(["pw_env_setup/**/*.json"]))
35*61c4878aSAndroid Build Coastguard Worker
36*61c4878aSAndroid Build Coastguard Worker# Downstream projects should set this label flag to point to their pigweed.json
37*61c4878aSAndroid Build Coastguard Worker# file.
38*61c4878aSAndroid Build Coastguard Workerlabel_flag(
39*61c4878aSAndroid Build Coastguard Worker    name = "pigweed_json",
40*61c4878aSAndroid Build Coastguard Worker    # We don't provide a default pigweed.json. Every project needs their own!
41*61c4878aSAndroid Build Coastguard Worker    build_setting_default = "//pw_build:unspecified_backend",
42*61c4878aSAndroid Build Coastguard Worker)
43*61c4878aSAndroid Build Coastguard Worker
44*61c4878aSAndroid Build Coastguard Workerpy_library(
45*61c4878aSAndroid Build Coastguard Worker    name = "pw_env_setup",
46*61c4878aSAndroid Build Coastguard Worker    srcs = [
47*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/__init__.py",
48*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/apply_visitor.py",
49*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/batch_visitor.py",
50*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/__init__.py",
51*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/update.py",
52*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/wrapper.py",
53*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/config_file.py",
54*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/environment.py",
55*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/github_visitor.py",
56*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/gni_visitor.py",
57*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/json_visitor.py",
58*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/python_packages.py",
59*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/shell_visitor.py",
60*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/virtualenv_setup/__init__.py",
61*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/virtualenv_setup/__main__.py",
62*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/virtualenv_setup/install.py",
63*61c4878aSAndroid Build Coastguard Worker    ],
64*61c4878aSAndroid Build Coastguard Worker    data = [
65*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/.cipd_version",
66*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/.cipd_version.digests",
67*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/arm.json",
68*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/bazel.json",
69*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/bazelisk.json",
70*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/buildifier.json",
71*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/clang.json",
72*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/clang_next.json",
73*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/cmake.json",
74*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/compatibility.json",
75*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/coverage.json",
76*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/default.json",
77*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/doxygen.json",
78*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/go.json",
79*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/host_tools.json",
80*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/kythe.json",
81*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/luci.json",
82*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/msrv_python.json",
83*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/openjdk.json",
84*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/pigweed.json",
85*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/python.json",
86*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/python310.json",
87*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/python311.json",
88*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/rbe.json",
89*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/riscv.json",
90*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/ruff.json",
91*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/testing.json",
92*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/upstream.json",
93*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/cipd_setup/web.json",
94*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/virtualenv_setup/constraint.list",
95*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/virtualenv_setup/constraint_hashes_linux.list",
96*61c4878aSAndroid Build Coastguard Worker        "pw_env_setup/virtualenv_setup/python_base_requirements.txt",
97*61c4878aSAndroid Build Coastguard Worker        ":pigweed_json",
98*61c4878aSAndroid Build Coastguard Worker    ],
99*61c4878aSAndroid Build Coastguard Worker    imports = ["."],
100*61c4878aSAndroid Build Coastguard Worker    deps = [
101*61c4878aSAndroid Build Coastguard Worker        "@python_packages//six",
102*61c4878aSAndroid Build Coastguard Worker        "@rules_python//python/runfiles",
103*61c4878aSAndroid Build Coastguard Worker    ],
104*61c4878aSAndroid Build Coastguard Worker)
105*61c4878aSAndroid Build Coastguard Worker
106*61c4878aSAndroid Build Coastguard Workerpw_py_test(
107*61c4878aSAndroid Build Coastguard Worker    name = "config_file_test",
108*61c4878aSAndroid Build Coastguard Worker    srcs = ["config_file_test.py"],
109*61c4878aSAndroid Build Coastguard Worker    deps = [
110*61c4878aSAndroid Build Coastguard Worker        ":pw_env_setup",
111*61c4878aSAndroid Build Coastguard Worker    ],
112*61c4878aSAndroid Build Coastguard Worker)
113*61c4878aSAndroid Build Coastguard Worker
114*61c4878aSAndroid Build Coastguard Workerpw_py_test(
115*61c4878aSAndroid Build Coastguard Worker    name = "json_visitor_test",
116*61c4878aSAndroid Build Coastguard Worker    srcs = ["json_visitor_test.py"],
117*61c4878aSAndroid Build Coastguard Worker    deps = [
118*61c4878aSAndroid Build Coastguard Worker        ":pw_env_setup",
119*61c4878aSAndroid Build Coastguard Worker        "@python_packages//six",
120*61c4878aSAndroid Build Coastguard Worker    ],
121*61c4878aSAndroid Build Coastguard Worker)
122*61c4878aSAndroid Build Coastguard Worker
123*61c4878aSAndroid Build Coastguard Workerpw_py_test(
124*61c4878aSAndroid Build Coastguard Worker    name = "cipd_setup_update_test",
125*61c4878aSAndroid Build Coastguard Worker    srcs = ["cipd_setup_update_test.py"],
126*61c4878aSAndroid Build Coastguard Worker    deps = [
127*61c4878aSAndroid Build Coastguard Worker        ":pw_env_setup",
128*61c4878aSAndroid Build Coastguard Worker        "@python_packages//parameterized",
129*61c4878aSAndroid Build Coastguard Worker    ],
130*61c4878aSAndroid Build Coastguard Worker)
131*61c4878aSAndroid Build Coastguard Worker
132*61c4878aSAndroid Build Coastguard Workerpw_py_test(
133*61c4878aSAndroid Build Coastguard Worker    name = "environment_test",
134*61c4878aSAndroid Build Coastguard Worker    srcs = ["environment_test.py"],
135*61c4878aSAndroid Build Coastguard Worker    deps = [
136*61c4878aSAndroid Build Coastguard Worker        ":pw_env_setup",
137*61c4878aSAndroid Build Coastguard Worker    ],
138*61c4878aSAndroid Build Coastguard Worker)
139*61c4878aSAndroid Build Coastguard Worker
140*61c4878aSAndroid Build Coastguard Workerpw_py_test(
141*61c4878aSAndroid Build Coastguard Worker    name = "python_packages_test",
142*61c4878aSAndroid Build Coastguard Worker    srcs = ["python_packages_test.py"],
143*61c4878aSAndroid Build Coastguard Worker    deps = [
144*61c4878aSAndroid Build Coastguard Worker        ":pw_env_setup",
145*61c4878aSAndroid Build Coastguard Worker        "@python_packages//toml",
146*61c4878aSAndroid Build Coastguard Worker    ],
147*61c4878aSAndroid Build Coastguard Worker)
148