public interface Action extends BuildEngineAction
| Modifier and Type | Method and Description |
|---|---|
ActionExecutionResult |
execute(ActionExecutionContext executionContext)
Executes this action as part of the build
|
String |
getID() |
com.google.common.collect.ImmutableSortedSet<Artifact> |
getInputs() |
com.google.common.collect.ImmutableSortedSet<OutputArtifact> |
getOutputs() |
BuildTarget |
getOwner() |
String |
getShortName() |
com.google.common.collect.ImmutableSortedSet<SourcePath> |
getSourcePathOutputs() |
boolean |
isCacheable()
TODO(bobyf): should we still have this or should we enforce everything to be cacheable
|
default boolean |
outputFileCanBeCopied() |
default boolean |
shouldRespectInputSizeLimitForRemoteExecution() |
getBuildTarget, getDependenciesBuildTarget getOwner()
com.google.common.collect.ImmutableSortedSet<Artifact> getInputs()
com.google.common.collect.ImmutableSortedSet<OutputArtifact> getOutputs()
com.google.common.collect.ImmutableSortedSet<SourcePath> getSourcePathOutputs()
getSourcePathOutputs in interface BuildEngineActionBuildEngineAction builds. This is here for legacy as
BuildRules deal with SourcePathString getShortName()
String getID()
ActionExecutionResult execute(ActionExecutionContext executionContext)
executionContext - a set of information the action can use for executionActionExecutionResult indicating the status of executiondefault boolean outputFileCanBeCopied()
buck build --out. To
be compatible, that means (1) getOutputs() ()} cannot be empty, and (2) the output
file works as intended when copied to an arbitrary path (i.e., does not have any
dependencies on relative symlinks).boolean isCacheable()
isCacheable in interface BuildEngineActionArtifacts should be cacheddefault boolean shouldRespectInputSizeLimitForRemoteExecution()
shouldRespectInputSizeLimitForRemoteExecution in interface BuildEngineAction