Commit graph

12 commits

Author SHA1 Message Date
Luca Farsi
040fabea76 Add optimized build features in build_test_suites
Add the optimized build feature in build_test_suites. WIP

Test: WIP
Bug: 342264003
Change-Id: I05a4ac4026c345f7ced771aa6deb1b6d1c38705c
2024-06-07 15:01:18 -07:00
Luca Farsi
db136447a6 Stream build process output
Ensure that output and errors from the underlying build command are
streamed for real-time build progress updates and debugging.

This change strips out all code that is currently unecessary and adds
tests for the remaining functionality.

Test: atest --host build_test_suites_local_test build_test_suites_test
Bug: 330365727
Change-Id: I7ef98d6654fe1435cf67c15e2c516a0967e03a75
2024-04-18 19:02:50 +00:00
Luca Farsi
c2ba38a7c1 switch to using DIST_DIR env var for dist
the dist dir should not be passed in as an argument, it should be picked
up from the environment.

Test: ./build/make/ci/build_test_suites --target_product aosp_x86_64 --target_release trunk_staging --with_dexpreopt_boot_img_and_system_server_only
Bug: 314171817
Change-Id: I32c007677cf1d81bb7b263b5c69e5510bf8dccfe
2024-03-27 11:31:12 -07:00
Luca Farsi
2dc1701741 Remove extra test targets from inside build script
Due to branch constraints, remove the extra targets defined inside the
build script and revert to having them be passed in via command line.

Test: ./build/make/ci/build_test_suites_x86_64-trunk_staging --target_product aosp_x86_64 --target_release trunk_staging --with_dexpreopt_boot_img_and_system_server_only <extra_targets>
Bug: 314171817
Change-Id: I89a82e969d294104f587d778ad319a41905320f8
2024-03-19 17:24:40 -07:00
Luca Farsi
11767d5dca Change the build test suites script to be noop
In preparation of switching over the git_main test suites target to
using this script change it to a no-op first to insure there's no
initial impact.

Test: ./build/make/ci/build_test_suites-trunk_staging --target_product aosp_x86_64 --target_release trunk_staging --with_dexpreopt_boot_img_and_system_server_only
Bug: 314171817
Change-Id: I7afab933143e4b617866b1975b1cbc71107f5b2f
2024-03-18 14:19:01 -07:00
Luca Farsi
5722c941ca Build the general tests host shared libs.
Build general-tests-shared-libs as it's an expected output of building
general-tests.

Test: BUILD_NUMBER="P0" ./build/make/ci/build_test_suites --target_product aosp_x86_64
--target_release trunk_staging --with_dexpreopt_boot_img_and_system_server_only --dist_dir <dist_dir> --change_info <change_info_file> <extra_targets>
Bug: 314171817

Change-Id: I2c18f41079d6db8621299734398b7a9df64930db
2024-02-21 12:18:49 -08:00
Luca Farsi
88feffcb1a Build config file zips
Build general-tests_configs.zip and general-testlist.zip as part of the
build_test_suites step, which general-tests also outputs.

Test: BUILD_NUMBER="P0" ./build/make/ci/build_test_suites --target_product aosp_x86_64
--target_release trunk_staging --with_dexpreopt_boot_img_and_system_server_only --dist_dir <dist_dir> --change_info <change_info_file> <extra_targets>
Bug: 314171817

Change-Id: Ic324ed4e5a05e1308dee3af7f15c067f88018b2d
2024-02-20 17:33:32 -08:00
Luca Farsi
c18da79d3f Determine if the build is in presubmit using build id
The current logic to determine if a build is pre or postsubmit is the
existence of the change_info file but this file also exists in
postsubmit, causing the build to break. Use the build ID as the
heuristic instead which should be more reliable.

Test: abtd run
Bug: 314171817
Change-Id: I9871eee71c0574583b528135dadd42e3f485a780
2024-01-22 14:56:13 -08:00
Luca Farsi
b559eefb50 Add option to print command output and fix env on dumpvars commands
Two fixes:
soong dumpvars commands require TARGET_RELEASE to be set in the env, so
set that.

Added option to print command output which is useful for actually
logging build output not only in the case of command failures.

Test: ABTD run with this change
Bug: 314171817
Change-Id: Ia3ad8ebfa58959c13417abaeeaa42a354c4c61de
2024-01-17 16:14:55 -08:00
Luca Farsi
d42a053aa8 Make build script executable via python
Add shebang line to make build test suties script callable via command
line without needing python.

Test: ./build/make/ci/build_test_suites --target_product aosp_x86_64
--target_release trunk_staging --with_dexpreopt_boot_img_and_system_server_only --dist_dir <dist_dir> --change_info <change_info_file> <extra_targets>

Change-Id: I94422993e864e021b036a4eb1673b463ad4b86d4
2024-01-17 15:25:18 -08:00
Luca Farsi
212d38662b Add dexpreopt option to build commands
Missed passing down the WITH_DEXPREOPT_BOOT_IMG_AND_SYSTEM_SERVER_ONLY
option in the build commands.

Test: ./build/make/ci/build_test_suites --target_product aosp_x86_64
--target_release trunk_staging --with_dexpreopt_boot_img_and_system_server_only --dist_dir <dist_dir> --change_info <change_info_file> <extra_targets>
Bug: 314171817

Change-Id: I0424e8b7ef350b3baff76ff9bcb8255c914fee5a
2024-01-12 11:24:25 -08:00
Luca Farsi
5717d6f2db Add a script to optimize Test Mapping builds
Move the test build command to a script that lives in-source and
intended to be called by the Android CI build system.

This script optimizes the build when change information is available by
only building relevant test modules. More specifically, only 'affected'
test modules listed in Test Mapping configuration files are built.

Using this script is expected to reduce build times and generate a
smaller `general-tests.zip` file which had increased to over 30 GB.

Test: ./build/make/ci/build_test_suites --target_product aosp_x86_64
--target_release trunk_staging --with_dexpreopt_boot_img_and_system_server_only --dist_dir <dist_dir> --change_info <change_info_file> <extra_targets>
Bug: 314171817

Change-Id: Ie2f8c066f5dd1cd13454141e55956328303fd79d
2024-01-11 16:17:36 -08:00