Some partners have large number of products that share common
images. Generating OTAs for all these products waste a lot of CPU
cycles, because we waste time diffing the same images multiple times.
To mitigate this, add a tool for merging partial OTAs. Partners can
generate a partial OTA for common images, and re-use the generated OTA
by merging with each product specific OTA.
Bug: 227848550
Test: Run merge_otas.py on 4 OTAs, install the generated OTA
Change-Id: Ie38d522cdc9b89b1123b3d8190516c3648f99788
Move some depency on global OPTIONS to parameters. This makes it easier
for other modules to re-use these functions w/o having to modify OPTIONS
variables before/after calling.
Test: th
Bug: 227536004
Change-Id: I3bab292f65a4222f0c9502bcf04fa7a85f8124c6
Bazel doesn't allow a module and file with the same name.
Delete the symlinks as they don't appear to be used.
Bug: 198619163
Test: Presubmits
Change-Id: I50eac56aa2b87708d1762e504b3bfd86c07a6bfb
Note that b autocompletion isn't perfect, given that the autocompletion
script looks into the workspace root for BUILD files, instead of
out/soong/workspace. (Also, out/soong/workspace may not even be
available if bp2build has not yet been run!) However, this is a good
start to autocompletion, as bazel commands, flags, and packages
autocomplete correctly.
Fixes: 196945896
Test: Treehugger
Test: Manual verification of `b` autocompletion
Change-Id: Ia99abcfe50d195c48644c7b3455243c03d5d38f7
The apex_sepolicy files were removed from the system partition in
ag/17753690 because they were not necessary in T builds.
For updatable sepolicy in Android U+ we are planning to move parts of
the existing platform policy into the apex sepolicy, so we will need to
make the apex_sepolicy files available to all builds.
Bug: 243923977
Test: adb shell ls /dev/selinux /system/etc/selinux
Change-Id: I24b8b8880149885d98caf992afdae908ead11fcf
eval doesn't seem to be necessary and using it breaks quoted args to query.
$ b cquery 'kind(test, //build/bazel/...)'
-bash: eval: line 99: syntax error near unexpected token `('
-bash: eval: line 99: ')`bazel cquery kind(test, //build/bazel/...)
---config=bp2build ''
Test: source and rerun b cquery with quoted args
Change-Id: I2b8c4387ab729b5f927fe5a629d3a4cd58bcf901
As a replacement for the removal of the avbtool symlink
Bug: 198619163
Test: Manually running `avbtool`
Change-Id: I54d504a5132e5ac89337e67a07bca0a6f410c272
There's also a Payload class in system/update_engine/scripts. To avoid
name collision, rename the one in releasetools to PayloadGenerator.
No functional changes in this CL.
Bug: 227848550
Test: th
Change-Id: Ib7d4c7ad9839d99416d965e3a3661b8cee7b7693
This allows other modules to import these classes w/o bring in tons of
depedency. No functional changes.
Test: th
Bug: 227848550
Change-Id: I98139b45c02eddefa8a26d032e759fa11cc4c694
It doesn't really make sense to incur the cost of running Soong tests to
Bazel users. We can shave off 20 seconds from the local critical path
during clean builds (or if Soong itself has changed) by enabling
--skip-soong-tests in the b command.
Test: b build '...'
Test: b build '...' --run-soong-tests
Bug: 240231596
Change-Id: I2325e1992099534b41ae996cee99e126a12f3c62
Bazel also supports `--foo bar` as another way to mean `--foo=bar`,
The current implementation would accidentally catch that and make it
`--foo --config=bp2build bar`. This CL instead requires that additional
arguments to the target come after a `--`.
E.g.
```
b run --args-for-bazel //foo -- --args-for-foo
```
Test: b build //build/bazel/scripts/difftool:difftool
Test: b run //build/bazel/scripts/difftool/difftool.py --level=FINE /tmp/legacyBuildFiles /tmp/bazelBuildFiles --file_type=object
Change-Id: I534caab04e4c919d4e7b6dc83b8a88e020626b18
This reverts commit 56e576dc12.
Reason for revert: breaks `b cquery //foo:bar` - it strips out `//foo:bar`.
Change-Id: I92d8b1c2732efad3160d26ee78116eccc9f8e48a
* changes:
Remove HashTreeInfo from verity_utils.py
Remove verity keys from info_dict
Remove replace verity key args
Remove unused args from common.py
Clean up unused code for VB in verity_utils.py
Remove verity related props from build_image.py
This change depends on the following toolchain commit:
https://reviews.llvm.org/D118948
Bug: b/174878242
Change-Id: Id67503a5c0983c9ae6fc29f158f4d20bca778e9f
Clang property is deprecated. Set up a BUILD_BROKEN_CLANG_PROPERTY
flag so partners can bypass errors from using clang.
Change-Id: I7ec19c3d11086046031108ecccba5065c38fa338
Test: m nothing & Treehugger
This is a tiny utility (11Kb) that implements the bootloader switch
interface for MTE:
https://source.android.com/docs/security/memory-safety/bootloader-support
It is only useful on armv8.5+ devices, but there is no separate GSI
image for those.
Bug: 242244112
Test: ls /system/bin/mtectrl
Change-Id: I2696a76d5828007a2db486f41064bcfc0e89ec36
It doesn't really make sense to incur the cost of running Soong tests to
Bazel users. We can shave off 20 seconds from the local critical path
during clean builds (or if Soong itself has changed) by enabling
--skip-soong-tests in the b command.
Test: b build '...'
Test: b build '...' --run-soong-tests
Bug: 240231596
Change-Id: I77d652502dc000908166e13045aa3e245c2e762c
We are removing VB related functionalities from release tools. This
change removes the hashtreeinfo and generator in verity_utils.py. It
also clears the function args using it.
Bug: 241044073
Test: atest under build/make
Change-Id: Icc298256be6917ffbd40cf4735f8e8092b541c9f
We are removing VB support from release tools. This change aims to
remove verity keys in info_dict generated by common.LOADINFODICT
Bug: 242672222
Test: atest under build/make
Change-Id: I9268cb113c2c0bd11ce85b8485e5a4605bdbdca0
We are removing VB support from release tools. This change aims to
remove the args related to replace verity key.
Bug: 242672222
Test: atest under build/make
Change-Id: I446a0b16e482c43542a1c0e41b24e80eb9fbc8e6