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
diff --git a/ci/build_test_suites.py b/ci/build_test_suites.py
index 5798f2b..dad34f1 100644
--- a/ci/build_test_suites.py
+++ b/ci/build_test_suites.py
@@ -36,16 +36,15 @@
)
-def build_test_suites(argv):
+def build_test_suites(argv, extra_targets: set[str]):
args = parse_args(argv)
- if not os.environ.get('BUILD_NUMBER')[0] == 'P':
- build_everything(args)
- return
-
- # Call the class to map changed files to modules to build.
- # TODO(lucafarsi): Move this into a replaceable class.
- build_affected_modules(args)
+ if is_optimization_enabled():
+ # Call the class to map changed files to modules to build.
+ # TODO(lucafarsi): Move this into a replaceable class.
+ build_affected_modules(args, extra_targets)
+ else:
+ build_everything(args, extra_targets)
def parse_args(argv):
@@ -60,25 +59,32 @@
)
argparser.add_argument('--dist_dir')
argparser.add_argument('--change_info', nargs='?')
- argparser.add_argument('--extra_required_modules', nargs='*')
return argparser.parse_args()
-def build_everything(args: argparse.Namespace):
- build_command = base_build_command(args)
+def is_optimization_enabled() -> bool:
+ # TODO(lucafarsi): switch back to building only affected general-tests modules
+ # in presubmit once ready.
+ # if os.environ.get('BUILD_NUMBER')[0] == 'P':
+ # return True
+ return False
+
+
+def build_everything(args: argparse.Namespace, extra_targets: set[str]):
+ build_command = base_build_command(args, extra_targets)
build_command.append('general-tests')
run_command(build_command, print_output=True)
-def build_affected_modules(args: argparse.Namespace):
+def build_affected_modules(args: argparse.Namespace, extra_targets: set[str]):
modules_to_build = find_modules_to_build(
pathlib.Path(args.change_info), args.extra_required_modules
)
# Call the build command with everything.
- build_command = base_build_command(args)
+ build_command = base_build_command(args, extra_targets)
build_command.extend(modules_to_build)
# When not building general-tests we also have to build the general tests
# shared libs.
@@ -89,7 +95,7 @@
zip_build_outputs(modules_to_build, args.dist_dir, args.target_release)
-def base_build_command(args: argparse.Namespace) -> list:
+def base_build_command(args: argparse.Namespace, extra_targets: set[str]) -> list:
build_command = []
build_command.append('time')
build_command.append('./build/soong/soong_ui.bash')
@@ -100,7 +106,7 @@
build_command.append('TARGET_RELEASE=' + args.target_release)
if args.with_dexpreopt_boot_img_and_system_server_only:
build_command.append('WITH_DEXPREOPT_BOOT_IMG_AND_SYSTEM_SERVER_ONLY=true')
- build_command.extend(args.extra_targets)
+ build_command.extend(extra_targets)
return build_command
@@ -404,5 +410,5 @@
return value
-def main(argv):
- build_test_suites(sys.argv)
+def main(argv, extra_targets: set[str]):
+ build_test_suites(argv, extra_targets)