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, getDependencies
BuildTarget 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 BuildEngineAction
BuildEngineAction
builds. This is here for legacy as
BuildRules deal with SourcePath
String 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 BuildEngineAction
Artifact
s should be cacheddefault boolean shouldRespectInputSizeLimitForRemoteExecution()
shouldRespectInputSizeLimitForRemoteExecution
in interface BuildEngineAction