diff options
Diffstat (limited to 'src/main/java')
8 files changed, 18 insertions, 41 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/actions/BaseSpawn.java b/src/main/java/com/google/devtools/build/lib/actions/BaseSpawn.java index d98ec9ff83..6fd5966e26 100644 --- a/src/main/java/com/google/devtools/build/lib/actions/BaseSpawn.java +++ b/src/main/java/com/google/devtools/build/lib/actions/BaseSpawn.java @@ -185,11 +185,6 @@ public class BaseSpawn implements Spawn { } @Override - public ActionOwner getOwner() { - return action.getOwner(); - } - - @Override public String getMnemonic() { return action.getMnemonic(); } diff --git a/src/main/java/com/google/devtools/build/lib/actions/DelegateSpawn.java b/src/main/java/com/google/devtools/build/lib/actions/DelegateSpawn.java index 41c278087d..503979c2a2 100644 --- a/src/main/java/com/google/devtools/build/lib/actions/DelegateSpawn.java +++ b/src/main/java/com/google/devtools/build/lib/actions/DelegateSpawn.java @@ -97,11 +97,6 @@ public class DelegateSpawn implements Spawn { } @Override - public ActionOwner getOwner() { - return spawn.getOwner(); - } - - @Override public String getMnemonic() { return spawn.getMnemonic(); } diff --git a/src/main/java/com/google/devtools/build/lib/actions/Executor.java b/src/main/java/com/google/devtools/build/lib/actions/Executor.java index 346623c69a..ee2e7029f2 100644 --- a/src/main/java/com/google/devtools/build/lib/actions/Executor.java +++ b/src/main/java/com/google/devtools/build/lib/actions/Executor.java @@ -83,7 +83,7 @@ public interface Executor { * Report a subcommand event to this Executor's Reporter and, if action * logging is enabled, post it on its EventBus. */ - void reportSubcommand(String reason, String message); + void reportSubcommand(Spawn spawn); /** * An event listener to report messages to. Errors that signal a action failure should diff --git a/src/main/java/com/google/devtools/build/lib/actions/Spawn.java b/src/main/java/com/google/devtools/build/lib/actions/Spawn.java index cf01172173..26f636b806 100644 --- a/src/main/java/com/google/devtools/build/lib/actions/Spawn.java +++ b/src/main/java/com/google/devtools/build/lib/actions/Spawn.java @@ -122,11 +122,6 @@ public interface Spawn { ResourceSet getLocalResources(); /** - * Returns the owner for this action. Production code should supply a non-null owner. - */ - ActionOwner getOwner(); - - /** * Returns a mnemonic (string constant) for this kind of spawn. */ String getMnemonic(); diff --git a/src/main/java/com/google/devtools/build/lib/exec/BlazeExecutor.java b/src/main/java/com/google/devtools/build/lib/exec/BlazeExecutor.java index 3d25dba0b6..3f7e07075b 100644 --- a/src/main/java/com/google/devtools/build/lib/exec/BlazeExecutor.java +++ b/src/main/java/com/google/devtools/build/lib/exec/BlazeExecutor.java @@ -15,10 +15,14 @@ package com.google.devtools.build.lib.exec; import com.google.common.collect.ImmutableMap; import com.google.common.eventbus.EventBus; +import com.google.devtools.build.lib.actions.ActionOwner; import com.google.devtools.build.lib.actions.ExecutionStrategy; import com.google.devtools.build.lib.actions.Executor; import com.google.devtools.build.lib.actions.ExecutorInitException; +import com.google.devtools.build.lib.actions.Spawn; import com.google.devtools.build.lib.actions.SpawnActionContext; +import com.google.devtools.build.lib.actions.Spawns; +import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.ThreadSafety.ThreadSafe; import com.google.devtools.build.lib.events.Event; import com.google.devtools.build.lib.events.EventHandler; @@ -140,12 +144,17 @@ public final class BlazeExecutor implements Executor { return showSubcommands; } - /** - * Report a subcommand event to this Executor's Reporter and, if action - * logging is enabled, post it on its EventBus. - */ @Override - public void reportSubcommand(String reason, String message) { + public void reportSubcommand(Spawn spawn) { + String reason; + ActionOwner owner = spawn.getResourceOwner().getOwner(); + if (owner == null) { + reason = spawn.getResourceOwner().prettyPrint(); + } else { + reason = Label.print(owner.getLabel()) + + " [" + spawn.getResourceOwner().prettyPrint() + "]"; + } + String message = Spawns.asShellCommand(spawn, getExecRoot()); reporter.handle(Event.of(EventKind.SUBCOMMAND, null, "# " + reason + "\n" + message)); } diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/SandboxHelpers.java b/src/main/java/com/google/devtools/build/lib/sandbox/SandboxHelpers.java index 88c6557e99..bdedfade73 100644 --- a/src/main/java/com/google/devtools/build/lib/sandbox/SandboxHelpers.java +++ b/src/main/java/com/google/devtools/build/lib/sandbox/SandboxHelpers.java @@ -22,11 +22,9 @@ import com.google.devtools.build.lib.actions.ActionStatusMessage; import com.google.devtools.build.lib.actions.ExecException; import com.google.devtools.build.lib.actions.Executor; import com.google.devtools.build.lib.actions.Spawn; -import com.google.devtools.build.lib.actions.Spawns; import com.google.devtools.build.lib.analysis.BlazeDirectories; import com.google.devtools.build.lib.analysis.config.BuildConfiguration; import com.google.devtools.build.lib.buildtool.BuildRequest; -import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.standalone.StandaloneSpawnStrategy; import com.google.devtools.build.lib.util.Preconditions; import com.google.devtools.build.lib.vfs.Path; @@ -47,12 +45,7 @@ public final class SandboxHelpers { static void reportSubcommand(Executor executor, Spawn spawn) { if (executor.reportsSubcommands()) { - executor.reportSubcommand( - Label.print(spawn.getOwner().getLabel()) - + " [" - + spawn.getResourceOwner().prettyPrint() - + "]", - Spawns.asShellCommand(spawn, executor.getExecRoot())); + executor.reportSubcommand(spawn); } } diff --git a/src/main/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategy.java b/src/main/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategy.java index 040a6548b0..9dc4b757aa 100644 --- a/src/main/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategy.java +++ b/src/main/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategy.java @@ -23,7 +23,6 @@ import com.google.devtools.build.lib.actions.Spawn; import com.google.devtools.build.lib.actions.SpawnActionContext; import com.google.devtools.build.lib.actions.Spawns; import com.google.devtools.build.lib.actions.UserExecException; -import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.rules.apple.AppleConfiguration; import com.google.devtools.build.lib.rules.apple.AppleHostInfo; import com.google.devtools.build.lib.rules.apple.DottedVersion; @@ -68,9 +67,7 @@ public class StandaloneSpawnStrategy implements SpawnActionContext { Executor executor = actionExecutionContext.getExecutor(); if (executor.reportsSubcommands()) { - executor.reportSubcommand( - Label.print(spawn.getOwner().getLabel()) + " [" + spawn.getResourceOwner().prettyPrint() - + "]", Spawns.asShellCommand(spawn, executor.getExecRoot())); + executor.reportSubcommand(spawn); } executor diff --git a/src/main/java/com/google/devtools/build/lib/worker/WorkerSpawnStrategy.java b/src/main/java/com/google/devtools/build/lib/worker/WorkerSpawnStrategy.java index 45845464a4..dab387db1d 100644 --- a/src/main/java/com/google/devtools/build/lib/worker/WorkerSpawnStrategy.java +++ b/src/main/java/com/google/devtools/build/lib/worker/WorkerSpawnStrategy.java @@ -34,10 +34,8 @@ import com.google.devtools.build.lib.actions.Executor; import com.google.devtools.build.lib.actions.SandboxedSpawnActionContext; import com.google.devtools.build.lib.actions.Spawn; import com.google.devtools.build.lib.actions.SpawnActionContext; -import com.google.devtools.build.lib.actions.Spawns; import com.google.devtools.build.lib.actions.UserExecException; import com.google.devtools.build.lib.analysis.BlazeDirectories; -import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.events.Event; import com.google.devtools.build.lib.events.EventHandler; import com.google.devtools.build.lib.sandbox.SandboxHelpers; @@ -211,12 +209,7 @@ public final class WorkerSpawnStrategy implements SandboxedSpawnActionContext { Preconditions.checkNotNull(executor.getContext(StandaloneSpawnStrategy.class)); if (executor.reportsSubcommands()) { - executor.reportSubcommand( - Label.print(spawn.getOwner().getLabel()) - + " [" - + spawn.getResourceOwner().prettyPrint() - + "]", - Spawns.asShellCommand(spawn, executor.getExecRoot())); + executor.reportSubcommand(spawn); } if (!spawn.getExecutionInfo().containsKey("supports-workers") |