Artifact Item
An Artifact
represents a single file produced by a Rule.
For example, if a rule produces three files, it needs to contain three Artifact items.
In addition to the properties listed in the section below, you can also set module properties within an Artifact
item:
Artifact { filePath: "somefile.cpp" fileTags: ["cpp"] cpp.cxxLanguageVersion: "c++11" // ... }
Artifact Properties
Note: The code on the right-hand side of these properties has access to the set of input artifacts, that is, it can refer to the inputs
map and, if the rule is not a multiplex rule, the input
variable.
Property | Type | Default | Description |
---|---|---|---|
alwaysUpdated | bool | true | Setting this to false means the file is not necessarily always written to by any command run by the rule. The timestamps of such artifacts are therefore not checked to find out whether they are up to date. Consequently, if all artifacts of a rule have this property set to false , the commands of the rule are always executed. |
filePath | string | undefined | The file path of the target artifact. |
fileTags | list | empty list | The tags to attach to the target file. These can then be matched by a rule. |