xref: /aosp_15_r20/external/pigweed/pigweed.json (revision 61c4878ac05f98d0ceed94b57d316916de578985)
1{
2  "pw": {
3    "pw_presubmit": {
4      "format": {
5        "python_formatter": "black",
6        "black_config_file": "$pw_env{PW_ROOT}/.black.toml",
7        "exclude": [
8          "\\bthird_party/fuchsia/repo",
9          "\\bthird_party/perfetto/repo",
10          "\\bthird_party/.*\\.json$",
11          "\\bpackage\\.lock$",
12          "\\bpw_presubmit/py/pw_presubmit/format/test_data/.*",
13          "\\bpw_web/log-viewer/package(-lock)?\\.json",
14          "\\bpw_web/log-viewer/src/assets/material_symbols_rounded_subset\\.woff2",
15          "^patches\\.json$"
16        ]
17      }
18    },
19    "pw_cli": {
20      "plugins": {
21        "build": {
22          "module": "pw_build.pigweed_upstream_build",
23          "function": "pigweed_upstream_main"
24        },
25        "console": {
26          "module": "pw_system.console",
27          "function": "main"
28        },
29        "emu": {
30          "module": "pw_emu.__main__",
31          "function": "main"
32        },
33        "clang-tidy-fix": {
34          "module": "pw_toolchain.clang_apply_replacements",
35          "function": "main"
36        },
37        "ffx": {
38          "module": "pw_cli.pigweed_aliases",
39          "function": "ffx"
40        },
41        "format": {
42          "module": "pw_presubmit.format_code",
43          "function": "main"
44        },
45        "heap-viewer": {
46          "module": "pw_allocator.heap_viewer",
47          "function": "main"
48        },
49        "ide": {
50          "module": "pw_ide.__main__",
51          "function": "main"
52        },
53        "package": {
54          "module": "pw_package.pigweed_packages",
55          "function": "main"
56        },
57        "presubmit": {
58          "module": "pw_presubmit.pigweed_presubmit",
59          "function": "main"
60        },
61        "requires": {
62          "module": "pw_cli.requires",
63          "function": "main"
64        },
65        "rpc": {
66          "module": "pw_hdlc.rpc_console",
67          "function": "main"
68        },
69        "seed": {
70          "module": "pw_module.seed",
71          "function": "main"
72        },
73        "update": {
74          "module": "pw_software_update.cli",
75          "function": "main"
76        },
77        "west": {
78          "module": "pw_env_setup_zephyr.zephyr",
79          "function": "main"
80        },
81        "sensor-desc": {
82          "module": "pw_sensor.sensor_desc",
83          "function": "main"
84        }
85      }
86    },
87    "pw_env_setup": {
88      "root_variable": "PW_ROOT",
89      "relative_pigweed_root": ".",
90      "rosetta": "never",
91      "project_actions": [
92        {
93          "import_path": "pw_env_setup",
94          "module_name": "npm_action"
95        }
96      ],
97      "gni_file": "build_overrides/pigweed_environment.gni",
98      "cipd_package_files": [
99        "pw_env_setup/py/pw_env_setup/cipd_setup/upstream.json"
100      ],
101      "virtualenv": {
102        "gn_targets": [
103          "python.install"
104        ],
105        "gn_root": ".",
106        "requirements": [
107          "pw_env_setup/py/pw_env_setup/virtualenv_setup/pigweed_upstream_requirements.txt"
108        ],
109        "constraints": [
110          "pw_env_setup/py/pw_env_setup/virtualenv_setup/constraint.list"
111        ],
112        "pip_install_find_links": [
113          "${PW_MSRV_PYTHON_CIPD_INSTALL_DIR}/pip_cache"
114        ]
115      }
116    },
117    "pw_package": {
118      "allow_middleware_only_packages": true
119    },
120    "pw_doctor": {
121      "new_bug_url": "https://issues.pigweed.dev/new"
122    },
123    "pw_emu": {
124      "target_files": [
125        "pw_emu/qemu-lm3s6965evb.json",
126        "pw_emu/qemu-stm32vldiscovery.json",
127        "pw_emu/qemu-netduinoplus2.json",
128        "pw_emu/renode-stm32f4_discovery.json"
129      ]
130    },
131    "bazel_presubmit": {
132      "remote_cache": true,
133      "upload_local_results": true,
134      "programs": {
135        "default": [
136          [
137            "mod",
138            "deps",
139            "--lockfile_mode=error"
140          ],
141          [
142            "build",
143            "//..."
144          ],
145          [
146            "test",
147            "//..."
148          ],
149          [
150            "test",
151            "--//pw_unit_test:backend=//pw_unit_test:googletest",
152            "--//pw_unit_test:main=@com_google_googletest//:gtest_main",
153            "--platforms=//pw_unit_test:googletest_platform",
154            "//..."
155          ],
156          [
157            "build",
158            "--aspects=@rules_rust//rust:defs.bzl%rust_clippy_aspect",
159            "--output_groups=clippy_checks",
160            "//..."
161          ],
162          [
163            "build",
164            "--config=asan",
165            "--config=fuzztest",
166            "//..."
167          ]
168        ],
169        "docs": [
170          [
171            "build",
172            "//docs"
173          ]
174        ],
175        "integration": [
176          [
177            "test",
178            "--build_tag_filters=integration",
179            "--test_tag_filters=integration",
180            "//..."
181          ]
182        ],
183        "sanitizers": [
184          [
185            "test",
186            "--config=asan",
187            "//..."
188          ],
189          [
190            "test",
191            "--config=tsan",
192            "//..."
193          ],
194          [
195            "test",
196            "--config=ubsan",
197            "//..."
198          ]
199        ]
200      }
201    },
202    "pw_cli_analytics": {
203      "report_command_line": true,
204      "report_project_name": true,
205      "report_remote_url": true,
206      "report_subcommand_name": "always"
207    }
208  }
209}
210