summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Julien Desprez <jdesprez@google.com> 2024-12-11 11:40:13 -0800
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2024-12-11 11:40:13 -0800
commit7e776b902917834a481c2a8863e7ba7c0c64b621 (patch)
treeb2fab3c2d16603b95933da159124b154d4d0290f
parent28b1eb53a8ba8f84e3eaef3f466c1c0a0f419763 (diff)
parent692dd32c33f6a096ab6cf5b66953617c9bac8a45 (diff)
Merge "Add robustness to possible empty BUILD_CONTEXT" into main
-rw-r--r--ci/build_test_suites.py6
-rw-r--r--ci/build_test_suites_test.py6
2 files changed, 10 insertions, 2 deletions
diff --git a/ci/build_test_suites.py b/ci/build_test_suites.py
index 3b8d530410..443e872c80 100644
--- a/ci/build_test_suites.py
+++ b/ci/build_test_suites.py
@@ -74,6 +74,12 @@ class BuildPlanner:
if 'optimized_build' not in self.build_context.enabled_build_features:
return BuildPlan(set(self.args.extra_targets), set())
+ if not self.build_context.test_infos:
+ logging.warning('Build context has no test infos, skipping optimizations.')
+ for target in self.args.extra_targets:
+ get_metrics_agent().report_unoptimized_target(target, 'BUILD_CONTEXT has no test infos.')
+ return BuildPlan(set(self.args.extra_targets), set())
+
build_targets = set()
packaging_commands_getters = []
# In order to roll optimizations out differently between test suites and
diff --git a/ci/build_test_suites_test.py b/ci/build_test_suites_test.py
index 29d268e994..190740f811 100644
--- a/ci/build_test_suites_test.py
+++ b/ci/build_test_suites_test.py
@@ -306,7 +306,8 @@ class BuildPlannerTest(unittest.TestCase):
build_planner = self.create_build_planner(
build_targets=build_targets,
build_context=self.create_build_context(
- enabled_build_features=[{'name': self.get_target_flag('target_1')}]
+ enabled_build_features=[{'name': self.get_target_flag('target_1')}],
+ test_context=self.get_test_context('target_1'),
),
)
@@ -322,7 +323,8 @@ class BuildPlannerTest(unittest.TestCase):
build_planner = self.create_build_planner(
build_targets=build_targets,
build_context=self.create_build_context(
- enabled_build_features=[{'name': self.get_target_flag('target_1')}]
+ enabled_build_features=[{'name': self.get_target_flag('target_1')}],
+ test_context=self.get_test_context('target_1'),
),
packaging_commands=packaging_commands,
)