
In some infra builds, we have observed an empty manifest.json file. This is unexpected, and it's unclear where the empty file stems from. It's potentially a problem during checkout, but could also be incorrect cleanup in between infrastructure runs. Aaron had sent CL https://chromium-review.googlesource.com/c/chromium/src/+/6178605 to guard from this situation, however the mechanism didn't seem to work correctly. This CL aim to catch all unexpected situation when trying to read the key "id" from manifest.json in JSON format. Change-Id: Ieaeeccb5541e4554be5d5f6c833ba053de0eda74 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6218323 Reviewed-by: David Song <wintermelons@google.com> Commit-Queue: YJ Wang <wangyj@google.com> Reviewed-by: Zijie He <zijiehe@google.com> Cr-Commit-Position: refs/heads/main@{#1415343}
About
//build
contains:
- Core GN templates and configuration
- Core Python build scripts
Since this directory is DEPS'ed in by some other repositories (webrtc, pdfium,
v8, etc), it should be kept as self-contained as possible by not referring
to files outside of it. Some exceptions exist (//testing
, select
//third_party
subdirectories), but new dependencies tend to break these other
projects, and so should be avoided.
Changes to //build
should be landed in the Chromium repo. They will then be
replicated to the stand-alone build repo
by the gsubtreed tool.
Note: You can find all directories already available through gsubtreed in the
list of all chromium repos.
Contents
//build/config
- Common templates via.gni
files.//build/toolchain
- GN toolchain definitions.Other .py files
- Some are used by GN/Ninja. Some by gclient hooks, some are just random utilities.
Files referenced by //.gn
:
//build/BUILDCONFIG.gn
- Included by allBUILD.gn
files.//build/secondary
- An overlay forBUILD.gn
files. Enables addingBUILD.gn
to directories that live in sub-repositories.//build_overrides
- Refer to //build_overrides/README.md.