diff options
author | John Cater <jcater@google.com> | 2017-12-04 19:34:53 -0800 |
---|---|---|
committer | Copybara-Service <copybara-piper@google.com> | 2017-12-04 19:37:08 -0800 |
commit | 9ac1f287eab0ce2fa0e3c685cd218832091f19e9 (patch) | |
tree | c58bbb5df9a84f53cae62f18450cf1c10ba8010e /src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java | |
parent | ddd5ac16aeffa6c4693c348f73e7365240b1abc5 (diff) |
Added execution platform to the ActionExecutionMetadata.
Part of #4128.
Change-Id: Id822d3ae6f8daf7c92a75bd8bd28590d4f625845
PiperOrigin-RevId: 177905460
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java | 30 |
1 files changed, 26 insertions, 4 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java b/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java index 74bd33a0d6..7dd7312e6e 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java @@ -55,6 +55,7 @@ import com.google.devtools.build.lib.analysis.AnalysisEnvironment; import com.google.devtools.build.lib.analysis.FilesToRunProvider; import com.google.devtools.build.lib.analysis.TransitiveInfoCollection; import com.google.devtools.build.lib.analysis.config.BuildConfiguration; +import com.google.devtools.build.lib.analysis.platform.PlatformInfo; import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder; import com.google.devtools.build.lib.collect.nestedset.NestedSetView; @@ -109,6 +110,8 @@ public class SpawnAction extends AbstractAction implements ExecutionInfoSpecifie private final ExtraActionInfoSupplier<?> extraActionInfoSupplier; + @Nullable private final PlatformInfo executionPlatform; + /** * Constructs a SpawnAction using direct initialization arguments. * @@ -154,6 +157,7 @@ public class SpawnAction extends AbstractAction implements ExecutionInfoSpecifie EmptyRunfilesSupplier.INSTANCE, mnemonic, false, + null, null); } @@ -195,7 +199,8 @@ public class SpawnAction extends AbstractAction implements ExecutionInfoSpecifie RunfilesSupplier runfilesSupplier, String mnemonic, boolean executeUnconditionally, - ExtraActionInfoSupplier<?> extraActionInfoSupplier) { + ExtraActionInfoSupplier<?> extraActionInfoSupplier, + @Nullable PlatformInfo executionPlatform) { super(owner, tools, inputs, runfilesSupplier, outputs, env); this.resourceSet = resourceSet; this.executionInfo = executionInfo; @@ -205,6 +210,7 @@ public class SpawnAction extends AbstractAction implements ExecutionInfoSpecifie this.mnemonic = mnemonic; this.executeUnconditionally = executeUnconditionally; this.extraActionInfoSupplier = extraActionInfoSupplier; + this.executionPlatform = executionPlatform; } @Override @@ -460,6 +466,12 @@ public class SpawnAction extends AbstractAction implements ExecutionInfoSpecifie return actionExecutionContext.getSpawnActionContext(getMnemonic()); } + @Override + @Nullable + public PlatformInfo getExecutionPlatform() { + return executionPlatform; + } + /** * A spawn instance that is tied to a specific SpawnAction. */ @@ -611,6 +623,7 @@ public class SpawnAction extends AbstractAction implements ExecutionInfoSpecifie private String mnemonic = "Unknown"; protected ExtraActionInfoSupplier<?> extraActionInfoSupplier = null; private boolean disableSandboxing = false; + @Nullable private PlatformInfo executionPlatform; /** * Creates a SpawnAction builder. @@ -638,6 +651,7 @@ public class SpawnAction extends AbstractAction implements ExecutionInfoSpecifie this.commandLines = Lists.newArrayList(other.commandLines); this.progressMessage = other.progressMessage; this.mnemonic = other.mnemonic; + this.executionPlatform = other.executionPlatform; } /** @@ -806,7 +820,8 @@ public class SpawnAction extends AbstractAction implements ExecutionInfoSpecifie progressMessage, new CompositeRunfilesSupplier( Iterables.concat(this.inputRunfilesSuppliers, this.toolRunfilesSuppliers)), - mnemonic); + mnemonic, + executionPlatform); } /** @@ -837,7 +852,8 @@ public class SpawnAction extends AbstractAction implements ExecutionInfoSpecifie ImmutableMap<String, String> executionInfo, CharSequence progressMessage, RunfilesSupplier runfilesSupplier, - String mnemonic) { + String mnemonic, + PlatformInfo executionPlatform) { return new SpawnAction( owner, tools, @@ -852,7 +868,8 @@ public class SpawnAction extends AbstractAction implements ExecutionInfoSpecifie runfilesSupplier, mnemonic, executeUnconditionally, - extraActionInfoSupplier); + extraActionInfoSupplier, + executionPlatform); } private ImmutableList<String> buildExecutableArgs( @@ -1354,6 +1371,11 @@ public class SpawnAction extends AbstractAction implements ExecutionInfoSpecifie this.disableSandboxing = true; return this; } + + public Builder setExecutionPlatform(@Nullable PlatformInfo executionPlatform) { + this.executionPlatform = executionPlatform; + return this; + } } /** |