Artifact

Describes a file produced by a Rule. More...

Properties

Detailed Description

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 Artifact properties, you can set module properties within an Artifact item, as follows:

 Artifact {
     filePath: "somefile.cpp"
     fileTags: ["cpp"]
     cpp.cxxLanguageVersion: "c++11"
     // ...
 }

Note: The code on the right-hand side of Artifact 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 Documentation

alwaysUpdated : bool

Setting this property to false means the file is not necessarily always written to by any command run by the rule. If all artifacts of a rule have this property set to false, the commands of the rule are only executed if all of them are out of date compared to the inputs.

Default: true


filePath : string

The file path of the target artifact.

Default: Undefined


fileTags : stringList

A list of tags to attach to the target file. These can then be matched by a Rule.

Default: An empty list