aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/bazel
diff options
context:
space:
mode:
authorGravatar Klaus Aehlig <aehlig@google.com>2018-07-05 04:20:21 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-07-05 04:21:46 -0700
commit55d0c1c649d3117f59e3d5d7b79de12d6b090381 (patch)
tree6019c4d71184fbd47e3cab7dbfe9fd16dd618217 /src/main/java/com/google/devtools/build/lib/bazel
parentf9216cea0356b236d8f5c1c65e277aa417134f82 (diff)
bazel sync: better report errors
So far, bazel sync would only report error that happened during the actual fetch operation. However, errors can also happen earlier, e.g., when loading or parsing the WORKSPACE file. Report these errors as well. Change-Id: Ifa4961b0101f338d7618c52eb607951acba7ccdf PiperOrigin-RevId: 203359188
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/bazel')
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/commands/SyncCommand.java16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/commands/SyncCommand.java b/src/main/java/com/google/devtools/build/lib/bazel/commands/SyncCommand.java
index 180612074a..3ea73647c2 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/commands/SyncCommand.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/commands/SyncCommand.java
@@ -54,6 +54,14 @@ public final class SyncCommand implements BlazeCommand {
@Override
public void editOptions(OptionsParser optionsParser) {}
+ private static void reportError(CommandEnvironment env, EvaluationResult<SkyValue> value) {
+ if (value.getError().getException() != null) {
+ env.getReporter().handle(Event.error(value.getError().getException().getMessage()));
+ } else {
+ env.getReporter().handle(Event.error(value.getError().toString()));
+ }
+ }
+
@Override
public BlazeCommandResult exec(CommandEnvironment env, OptionsProvider options) {
try {
@@ -73,6 +81,7 @@ public final class SyncCommand implements BlazeCommand {
SkyframeExecutor.DEFAULT_THREAD_COUNT,
env.getReporter());
if (packageLookupValue.hasError()) {
+ reportError(env, packageLookupValue);
return BlazeCommandResult.exitCode(ExitCode.ANALYSIS_FAILURE);
}
RootedPath workspacePath =
@@ -89,6 +98,7 @@ public final class SyncCommand implements BlazeCommand {
SkyframeExecutor.DEFAULT_THREAD_COUNT,
env.getReporter());
if (value.hasError()) {
+ reportError(env, value);
return BlazeCommandResult.exitCode(ExitCode.ANALYSIS_FAILURE);
}
fileValue = (WorkspaceFileValue) value.get(workspace);
@@ -115,11 +125,7 @@ public final class SyncCommand implements BlazeCommand {
SkyframeExecutor.DEFAULT_THREAD_COUNT,
env.getReporter());
if (fetchValue.hasError()) {
- if (fetchValue.getError().getException() != null) {
- env.getReporter().handle(Event.error(fetchValue.getError().getException().getMessage()));
- } else {
- env.getReporter().handle(Event.error(fetchValue.getError().toString()));
- }
+ reportError(env, fetchValue);
return BlazeCommandResult.exitCode(ExitCode.ANALYSIS_FAILURE);
}
} catch (InterruptedException e) {