diff options
author | Janak Ramakrishnan <janakr@google.com> | 2016-08-09 08:45:34 +0000 |
---|---|---|
committer | Yue Gan <yueg@google.com> | 2016-08-09 09:01:18 +0000 |
commit | 6f9d7d1c05a0dbb6db6bf058d01f7a05a14b4d91 (patch) | |
tree | a3272ec7786f004fa80c225d21f1547f92e881cd /src/main/java/com/google/devtools/build/lib/analysis/BuildView.java | |
parent | 1d9761390dddf4d577e06dad790d92f354187a9d (diff) |
Error out if loading phase error encountered even if we skip analysis. Also change error messages in these cases to not assume there was an execution phase.
--
MOS_MIGRATED_REVID=129723717
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.java | 36 |
1 files changed, 14 insertions, 22 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 e3cf5f6bc8..1afacf957b 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 @@ -269,21 +269,6 @@ public class BuildView { * Return value for {@link BuildView#update} and {@code BuildTool.prepareToBuild}. */ public static final class AnalysisResult { - - public static final AnalysisResult EMPTY = - new AnalysisResult( - ImmutableList.<ConfiguredTarget>of(), - ImmutableList.<AspectValue>of(), - null, - null, - null, - ImmutableList.<Artifact>of(), - ImmutableList.<ConfiguredTarget>of(), - ImmutableList.<ConfiguredTarget>of(), - null, - ImmutableMap.<PackageIdentifier, Path>of(), - ""); - private final ImmutableList<ConfiguredTarget> targetsToBuild; @Nullable private final ImmutableList<ConfiguredTarget> targetsToTest; @Nullable private final String error; @@ -576,13 +561,7 @@ 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.hasTargetPatternError() - ? "execution phase successful, but there were errors parsing the target pattern" - : 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; + String error = createErrorMessage(loadingResult, skyframeAnalysisResult); final WalkableGraph graph = skyframeAnalysisResult.getWalkableGraph(); final ActionGraph actionGraph = new ActionGraph() { @@ -612,6 +591,19 @@ public class BuildView { loadingResult.getWorkspaceName()); } + @Nullable + public static String createErrorMessage( + LoadingResult loadingResult, @Nullable SkyframeAnalysisResult skyframeAnalysisResult) { + return loadingResult.hasTargetPatternError() + ? "command succeeded, but there were errors parsing the target pattern" + : loadingResult.hasLoadingError() + || (skyframeAnalysisResult != null && skyframeAnalysisResult.hasLoadingError()) + ? "command succeeded, but there were loading phase errors" + : (skyframeAnalysisResult != null && skyframeAnalysisResult.hasAnalysisError()) + ? "command succeeded, but not all targets were analyzed" + : null; + } + private static NestedSet<Artifact> getBaselineCoverageArtifacts( Collection<ConfiguredTarget> configuredTargets) { NestedSetBuilder<Artifact> baselineCoverageArtifacts = NestedSetBuilder.stableOrder(); |