IMPORTANT: The Bazel docs have moved! Please update your bookmark to https://bazel.build/rules/lib/Action You can read about the migration, and let us know what you think.Extensions > API reference > Action
ActionAn action created during rule analysis.
This object is visible for the purpose of testing, and may be obtained from an Actions provider. It is normally not necessary to access
Action objects or their fields within a rule's implementation function. You may instead want to see the Rules page for a general discussion of how to use actions when defining custom rules, or the API reference for creating actions.
Some fields of this object are only applicable for certain kinds of actions. Fields that are inapplicable are set to
sequence Action.argsA list of frozen Args objects containing information about the action arguments. These objects contain accurate argument information, including arguments involving expanded action output directories. However, Args objects are not readable in the analysis phase. For a less accurate account of arguments which is available in the analysis phase, see argv.
Note that some types of actions do not yet support exposure of this field. For such action types, this is
sequence Action.argvFor actions created by ctx.actions.run() or ctx.actions.run_shell() an immutable list of the arguments for the command line to be executed. Note that for shell actions the first two arguments will be the shell path and
"-c". May return
string Action.contentFor actions created by ctx.actions.write() or ctx.actions.expand_template(), the contents of the file to be written, if those contents can be computed during the analysis phase. The value is
Noneif the contents cannot be determined until the execution phase, such as when a directory in an Args object needs to be expanded. May return
dict Action.envThe 'fixed' environment variables for this action. This includes only environment settings which are explicitly set by the action definition, and thus omits settings which are only pre-set in the execution environment.
depset Action.inputsA set of the input files of this action.
string Action.mnemonicThe mnemonic for this action.
depset Action.outputsA set of the output files of this action.
dict Action.substitutionsFor actions created by ctx.actions.expand_template(), an immutable dict holding the substitution mapping. May return