Graph Filter

You can filter which nodes are executed using a DSL based on the Symfony Expression Language.

The filter will match nodes and all dependencies required to reach that node.

Examples

Nodes with the name “phpunit”:

$ maestro run --filter="label == 'phpunit'"

Containing nodes tagged “foobar”:

$ maestro run --filter="'foobar' in tags"

With the package task:

$ maestro run --filter="task['alias'] == 'package'"

If you just want to run a branch of the graph you can use the branch function:

$ maestro run --filter="branch('/maestrophp/example-math')"

Available Fields

The attributes are determined by the normalized representation of the node, which is the same as produced by the JSON report.

$ maestro run -rjson --no-loop | jq

Or to just see a simple list of nodes:

$ maestro run -rnode --no-loop