Commit Graph

9899 Commits

Author SHA1 Message Date
Jeongik Cha
8ee4271956 Merge "Update OWNERS for allowlist" into main 2024-09-19 23:28:15 +00:00
Marybeth Fair
df1a87770a Merge "Add fingerprint to packages.map." into main 2024-09-19 19:18:28 +00:00
Priyanka Advani (xWF)
75501177a5 Merge "Revert "Add command line tool that generates NOTICE.xml.gz for p..."" into main 2024-09-19 17:53:20 +00:00
Priyanka Advani (xWF)
2f37c1980c Revert "Add command line tool that generates NOTICE.xml.gz for p..."
Revert submission 3273112-soong-notice-xml

Reason for revert: Droidmonitor created revert due to b/368348129.

Reverted changes: /q/submissionid:3273112-soong-notice-xml

Change-Id: I55e1e93aa6d4b311c6ee461d4216a104909af842
2024-09-19 17:43:39 +00:00
Treehugger Robot
8e571eea6d Merge "aconfig: cpp test-mode lib" into main 2024-09-19 17:42:29 +00:00
Wei Li
9c3097d5fb Merge "Add command line tool that generates NOTICE.xml.gz for partitions." into main 2024-09-19 17:37:06 +00:00
Treehugger Robot
8a1e78aa9c Merge "Add etc/bpf/uprobestats/ProcessManagement.o in allowlist" into main 2024-09-19 17:04:32 +00:00
Jeongik Cha
ac740c3ef9 Update OWNERS for allowlist
Bug: n/a
Test: n/a
Change-Id: I7a186fbc89d5edf75efc76791e554c67bc02ef75
2024-09-20 00:33:25 +09:00
Jeongik Cha
392c0c954d Add etc/bpf/uprobestats/ProcessManagement.o in allowlist
to unblock build failure

Bug: 351698657
Bug: 368185982
Test: build
Change-Id: I1017091dd26cd74b471d1d71c3f3b6ad80a0c50a
2024-09-20 00:29:03 +09:00
Marybeth Fair
769d8eed37 Add fingerprint to packages.map.
No guards to this change because we will guard actually writing the
fingerprint, and right now new storage is not in trunkfood yet. This
change modifies the package map file structure. Note that if the new
storage was in trunkfood, this could (theoretically) cause issues if
there were cross-container READ_WRITE flags (not permitted per
documentation) and if the containers were built at separate aconfig
versions (ie before and after this change). Adding the fingerprint will
help prevent such issues in the future. Incremented the storage version
number as I've changed the format.

Again, fingerprint is not actually written in this CL, it always has a
value of 0.

Updated the test files as well to have the new version and the
fingerprint. Since this changed the package node size, some of the
information in the buckets there (offset) has changed as well.

Also added a test util for flags from another package to test future
changes.

Bug: 316357686
Test: atest aconfig.test
Change-Id: I09e10808492f241fe78028d2757f7d63328623c3
2024-09-19 10:17:23 -04:00
William Escande
01d6bb3aae aconfig: cpp test-mode lib
Incompatible interface between test-mode and normal mode.

Bluetooth is linking the normal flag for the code that is shipped, and
it is linking the test-mode library for unit testing.
While trying to move some test to use the test-mode, we noticed some
failure as the flag returned were not the one expected.

It appear the code and the test are built against 2 different library,
but linked against one.
The provide interface only contains getter in normal mode, and it is
alternating between getter/setter in test-mode.
By moving the setter in test-mode toward the end of the interface, we
are not modifying the assumed order for the code built against the
normal mode.

This CL is a short term fix, to make the test goes green and prevent
immediat failure. An refactor of the cpp generated code should be done
to avoid using 2 different version of the same symbol in 2 different
libs.

Bug: 311772251
Test: atest aconfig.test
Change-Id: I97f6523452c451d005d2e92bfa1ef861611ab840
2024-09-18 18:01:20 -07:00
Wei Li
e4c1ec9466 Add command line tool that generates NOTICE.xml.gz for partitions.
The tool currently generates a XML file with the root element only and its content will be filled in in following CLs.

Also disable the generation of NOTICE.xml.gz in make when USE_SOONG_DEFINED_SYSTEM_IMAGE is true, so the Soong module could be used without conflict.

Bug: 330949782
Bug: 338342381
Test: lunch aosp_cf_x86_64_phone-trunk_staging-eng && m, and check that system/etc/NOTICE.xml.gz have all the XML elements.
Test: lunch aosp_cf_x86_64_phone_soong_system-trunk_staging-eng && m, and check that system/etc/NOTICE.xml.gz has root element only.
Change-Id: I82e90bd9aa3dabc605acfe8da697ab1f7e7ecf9b
2024-09-18 20:48:34 +00:00
Dennis Shen
5b6b40e037 Merge "aconfig: update cpp_codegen to just read from new storage" into main 2024-09-18 01:53:30 +00:00
Dennis Shen
ee4e44ade7 aconfig: update cpp_codegen to just read from new storage
Change-Id: Ifc5886e587a64da0d940df903f972593c5e9c9d8
2024-09-17 21:11:22 +00:00
Zhuoyao Zhang
cd1908f552 Merge "Bootstrap the edit monitor project" into main 2024-09-17 20:14:39 +00:00
Zhuoyao Zhang
9e103e98e0 Bootstrap the edit monitor project
Add basic files required for the edit monitor project.

The project aims to monitor file changes on Android source trees that are checked out to local disk and upload the edit event logs for post analysis. More details and design doc can be found in the bug.

Bug: b/365617369
Test: None
Change-Id: Ie5e2bdb0747823f200c87ebe071f5f9a2e567b46
2024-09-17 19:16:55 +00:00
Dennis Shen
869fdd13e8 Merge "aconfig: update rust_codegen to just read from new storage when flag is true" into main 2024-09-17 19:14:14 +00:00
Dennis Shen
1b0a6667b1 aconfig: update rust_codegen to just read from new storage when flag is true
This is the last launch of new storage. Use the flag enable_only_new_storage to control if the rust codegen should read from new storage or old storage.

Change-Id: Id2bea8df191a939acb5e07b6a9ac8dc1ddd0f7fb
2024-09-17 15:03:59 +00:00
Kelvin Zhang
c0ae029e87 Fix missing signer arg error after re-generate OTA
sign_target_files_apks invokes ota_from_raw_img's main function directly(without creating a new process). As a result, flag overrides in  ota_from_raw_img impacts further signing. To fix, remove unnecessary flag overrides.

Test: th
Bug: 365697483
Change-Id: Iaf6ad4132afcab4912bd4b9ea002bfa3d9a1462a
2024-09-16 21:01:45 +00:00
Treehugger Robot
112c4886c7 Merge "Don't show staged value if flag is RO" into main 2024-09-16 16:58:33 +00:00
Marybeth Fair
a323229292 Merge "Add ability to manually write to binary files." into main 2024-09-16 15:57:24 +00:00
Ted Bauer
431f44a314 Don't show staged value if flag is RO
Bug: 324436145
Change-Id: I493421f29d6e7f5e844dd47cc6417b3d5fe9cdbb
Test: m aflags && aflags list
2024-09-16 15:50:50 +00:00
Marybeth Fair
45b0438cc0 Add ability to manually write to binary files.
I was updating the format of PackageTableHeader to add an additional
field (and due to that change incremented the file version). This broke
several tests under aconfig_storage_read_api and
aconfig_storage_write_api that were operating on files written in the
old schema. I tried to re-generate them using aconfig create-storage as
explained in aosp/2933375, but was having some trouble. Figure if we can
just update the files directly it will be easier to make updates in the
future anyway. This isn't bypassing logic that's tested - IIUC the tests
cover reading the file correctly (writing is covered in separate tests).

Usage:
$ aconfig-storage print --file=path/to/flag.map --type=flag_map
--format=json > flag_map.json
$ vim flag_map.json // Manually make updates
$ aconfig-storage write-bytes --input-file=flag_map.json
--output-file=path/to/flag.map --type=flag_map

Change-Id: I212bf0b97483740b30130eb121acb895d350da84
Test: manual (adding debug-only tooling) + cargo t
Bug: 316357686
2024-09-16 10:30:04 -04:00
Treehugger Robot
703b4830dc Merge "Fix error in payload_signer_args passing" into main 2024-09-13 17:46:02 +00:00
Ted Bauer
83d2a58dd9 Show containers in list new storage
Test: m
Bug: 324436145
Change-Id: I695aa130aee356451aa8196911d31b87d45d745d
2024-09-13 17:08:31 +00:00
Treehugger Robot
e1e07f892e Merge "Allow mix of full and incremental updates in OTA" into main 2024-09-13 16:56:44 +00:00
Kelvin Zhang
e2b7599437 Fix error in payload_signer_args passing
payload_signer_args is a list returned from shlex.split, need to unparse
it before passing to shell CLI

Test: th
Bug: 354019928
Change-Id: I4d308557b5bb808bf34c9d4514408c21176c81f6
2024-09-13 16:53:33 +00:00
Kelvin Zhang
71565fb070 Allow mix of full and incremental updates in OTA
This allows a subset of partitions to be updated in in full OTA fashion
when generating an incremental OTA. The benefit is faster OTA
generation(mostly for testing purposes).

Test: th
Bug: 365843325
Change-Id: Iff9f649c0646342eb9bdece9a46c942cb432b5e8
2024-09-12 18:19:14 -07:00
Dennis Shen
b3681ad5c6 Treat system_ext as system in container designation
Bug: b/365135457
Test: m
Change-Id: Iece264cdd49d84ef0e5acccdbcf68059c876395f
2024-09-12 23:32:03 +00:00
Treehugger Robot
187e280d3c Merge "Expose DeviceProtos' paths to parse in Framework" into main 2024-09-12 21:33:17 +00:00
Treehugger Robot
1c0e255327 Merge "aconfig: Don't log matching validated flags" into main 2024-09-12 16:37:30 +00:00
Yurii Zubrytskyi
45e02d3c76 Expose DeviceProtos' paths to parse in Framework
Framework currently hardcodes the paths to flags protos, with
this change it will be able to reuse the globally defined ones
and also gets access to all APEX flags

Bug: 301491148
Test: build + boot
Flag: EXEMPT build change
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:1e85e40c3ead83585ac3d7c71a712d35cd420a36)
Merged-In: I91dae72c32c47888697914265c90918389aa4c25
Change-Id: I91dae72c32c47888697914265c90918389aa4c25
2024-09-12 05:53:21 +00:00
Kelvin Zhang
278f34add3 Merge "Fix OTA package re-sign on release key servers" into main 2024-09-12 00:09:00 +00:00
Jared Duke
f43413c53f aconfig: Don't log matching validated flags
Avoid log spam by skipping log statements for matching validated flag
entries in the Java codegen. Also change any mismatched logs from
info to warning.

Change-Id: Icb8bba38d8594438757d76957c4c0188f6c2758a
Test: atest aconfig.test
Flag: EXEMPT bugfix
2024-09-11 23:15:58 +00:00
Kelvin Zhang
4837944712 Fix OTA package re-sign on release key servers
Release key signing passes more args than just --package_key, honor
these flags properly in signing script.

Test: th
Bug: 354019928
Change-Id: I49215e92f28da2ac4cd72fb9e5c6bbc94a3e3f02
2024-09-11 16:07:04 -07:00
Ted Bauer
b1edaae899 Add flag for enabling only new storage and use in aflags
Change-Id: I73218de38d005d77987d5103364a102cec3abc07
Test: m && cargo t
Bug: 324436145
2024-09-11 20:24:47 +00:00
Kelvin Zhang
41d3833a07 Specify tooling dependency for create_brick_ota
create_brick_ota relies on signapk for OTA package signing, hence
add relevant tools in dependency list.

Bug: 365701163

Change-Id: Ib414a468bc690ee35cc7cae7bc0d3062c89d0bbe
2024-09-10 14:36:00 -07:00
Kelvin Zhang
2427d9d402 Fix missing dir error for certain targets
Test: th
Bug: 364967828
Change-Id: I31f76533c3e3be63aa55f96be8fd697c4a629e65
2024-09-09 11:14:53 -07:00
Xin Li
7c11265724 Merge "Merge 24Q3 to AOSP main" into main 2024-09-07 01:12:23 +00:00
Kelvin Zhang
cc758d9609 Create parent directories before writing to output target files
Sometimes the output path's parent directory doesn't exist yet,
causing a failure in open() syscall.

Test: sign_target_files_apks solios-target_files-12328286.zip
solis_signed.zip
Bug: 364967828

Change-Id: I85f91ca5d1321c1ba763cac058eb28acc7f48e70
2024-09-06 14:49:12 -07:00
Treehugger Robot
7575a8174b Merge "Reland Support incremental dev option OTA during signing" into main am: 7f9092291f
Original change: https://android-review.googlesource.com/c/platform/build/+/3257139

Change-Id: I673212e73356136e88b2c64a40c094eddd2113f8
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-09-05 19:01:57 +00:00
Kelvin Zhang
065c5f5f5b Reland Support incremental dev option OTA during signing
This allows incremental dev option to be used on release-key devices.
Boot images are signed during the signing process, and hence the dev
option OTAs(which are derivative of boot image) need to be re-generated.
Previously we only re-generate full OTAs, now we support incrementals
too.

Previous land of the CL had a bug where AddDtbo() is called even for
devices which do not have a DTBO partition, causing signing failures.
This reland fixes the issue above by checking "has_dtbo" in
misc_info.txt

Test: th
Bug: 339658378

This reverts commit 29c7842c02.

Change-Id: Ifb080aaa15faf752ab1cff687c54d00290c1bfa6
2024-09-05 10:50:03 -07:00
Treehugger Robot
baeab42b59 Merge "Fix str/bytes type error in ReplaceOtaKeys" into main am: f54075d5d4
Original change: https://android-review.googlesource.com/c/platform/build/+/3255473

Change-Id: Icd7a835359eaeee9d96d0c663e9a195dcce884ab
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-09-05 17:30:20 +00:00
Treehugger Robot
f54075d5d4 Merge "Fix str/bytes type error in ReplaceOtaKeys" into main 2024-09-05 17:27:48 +00:00
Kelvin Zhang
0c9a6ffb00 Fix str/bytes type error in ReplaceOtaKeys
ZipFile.read() returns byte sequence, while re.match expects str.
Decode the bytes read first.

Test: th
Bug: 315855025
Change-Id: Id2da071f3caeab56cfac845a9e4f842c4e102f49
2024-09-04 17:03:24 -07:00
Treehugger Robot
b7c2e20d68 Merge "Don't show container in list new storage" into main am: 9263e3e447
Original change: https://android-review.googlesource.com/c/platform/build/+/3255342

Change-Id: I9c0c9fbc85c70d081499be8d57f38a5dc9726b2d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-09-04 19:33:23 +00:00
Ted Bauer
c50121613d Don't show container in list new storage
Change-Id: I24263e244d5b86ef066cd2efd511a890b03bf6e7
Test: m
Bug: 324436145
2024-09-04 18:11:59 +00:00
Marybeth Fair
27327f5586 Merge "Add a function to fingerprint flag/offset info." into main am: 2610f480aa
Original change: https://android-review.googlesource.com/c/platform/build/+/3249040

Change-Id: I91bb4dd3a8e2f8105ffdc19264eb92bb9de22653
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-09-04 15:48:12 +00:00
Marybeth Fair
2610f480aa Merge "Add a function to fingerprint flag/offset info." into main 2024-09-04 15:37:59 +00:00
Marybeth Fair
df1b7d1d81 Add a function to fingerprint flag/offset info.
Uses SipHasher implementation added to the project. Ideally the output
would remain consistent between builds (though the worst case of an
updated algorithm would be a string lookup for cross-container reads
only).

Sort the flags first so everything is always added to the hasher in the
same order - note this code is only run at build time, not runtime.

Next step is to write this fingerprint into the package.map file and
introduce a flag to guard this change.

Bug: 316357686
Test: atest aconfig.test
Change-Id: Ie5f34541d982dfa120ffb05fc0790603689d47c0
2024-09-03 16:24:51 -04:00