aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/analysis/BuildView.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/BuildView.java32
1 files changed, 12 insertions, 20 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java b/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java
index 35d3c123b1..3712e54e53 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java
@@ -451,7 +451,6 @@ public class BuildView {
List<AspectValueKey> aspectKeys = new ArrayList<>();
for (String aspect : aspects) {
-
// Syntax: label%aspect
int delimiterPosition = aspect.indexOf('%');
if (delimiterPosition >= 0) {
@@ -514,18 +513,13 @@ public class BuildView {
LOG.info(msg);
}
- boolean analysisSuccessful = !skyframeAnalysisResult.hasError();
AnalysisResult result =
createResult(
eventHandler,
loadingResult,
topLevelOptions,
viewOptions,
- skyframeAnalysisResult.getConfiguredTargets(),
- skyframeAnalysisResult.getAspects(),
- skyframeAnalysisResult.getWalkableGraph(),
- skyframeAnalysisResult.getPackageRoots(),
- analysisSuccessful);
+ skyframeAnalysisResult);
LOG.info("Finished analysis");
return result;
}
@@ -535,13 +529,10 @@ public class BuildView {
LoadingResult loadingResult,
TopLevelArtifactContext topLevelOptions,
BuildView.Options viewOptions,
- Collection<ConfiguredTarget> configuredTargets,
- Collection<AspectValue> aspects,
- final WalkableGraph graph,
- ImmutableMap<PackageIdentifier, Path> packageRoots,
- boolean analysisSuccessful)
- throws InterruptedException {
+ SkyframeAnalysisResult skyframeAnalysisResult)
+ throws InterruptedException {
Collection<Target> testsToRun = loadingResult.getTestsToRun();
+ Collection<ConfiguredTarget> configuredTargets = skyframeAnalysisResult.getConfiguredTargets();
Collection<ConfiguredTarget> allTargetsToTest = null;
if (testsToRun != null) {
// Determine the subset of configured targets that are meant to be run as tests.
@@ -584,12 +575,13 @@ public class BuildView {
// Tests. This must come last, so that the exclusive tests are scheduled after everything else.
scheduleTestsIfRequested(parallelTests, exclusiveTests, topLevelOptions, allTargetsToTest);
- String error = !loadingResult.hasLoadingError()
- ? (analysisSuccessful
- ? null
- : "execution phase succeeded, but not all targets were analyzed")
- : "execution phase succeeded, but there were loading phase errors";
+ String error = loadingResult.hasLoadingError() || skyframeAnalysisResult.hasLoadingError()
+ ? "execution phase succeeded, but there were loading phase errors"
+ : skyframeAnalysisResult.hasAnalysisError()
+ ? "execution phase succeeded, but not all targets were analyzed"
+ : null;
+ final WalkableGraph graph = skyframeAnalysisResult.getWalkableGraph();
final ActionGraph actionGraph = new ActionGraph() {
@Nullable
@Override
@@ -605,7 +597,7 @@ public class BuildView {
};
return new AnalysisResult(
configuredTargets,
- aspects,
+ skyframeAnalysisResult.getAspects(),
allTargetsToTest,
error,
actionGraph,
@@ -613,7 +605,7 @@ public class BuildView {
parallelTests,
exclusiveTests,
topLevelOptions,
- packageRoots);
+ skyframeAnalysisResult.getPackageRoots());
}
private static NestedSet<Artifact> getBaselineCoverageArtifacts(