2017-03-28 17:23:01 -04:00
|
|
|
[[condition]]
|
|
|
|
== Conditions
|
|
|
|
|
|
|
|
When a watch is triggered, its condition determines whether or not to execute
|
|
|
|
the watch actions. {watcher} supports the following condition types:
|
|
|
|
|
|
|
|
* <<condition-always, `always`>>: set the watch condition to `true` so the watch
|
|
|
|
actions are always executed.
|
|
|
|
* <<condition-never, `never`>>: set the watch condition to `false` so the watch
|
|
|
|
actions are never executed.
|
|
|
|
* <<condition-compare, `compare`>>: perform simple comparisons against values
|
|
|
|
in the watch payload to determine whether or not to execute the watch actions.
|
|
|
|
* <<condition-array-compare, `array_compare`>>: compare an array of values in the
|
|
|
|
watch payload to a given value to determine whether or not to execute the watch
|
|
|
|
actions.
|
2018-06-04 07:00:57 -04:00
|
|
|
* <<condition-script, `script`>>: use a script to determine whether or not to
|
2017-03-28 17:23:01 -04:00
|
|
|
execute the watch actions.
|
|
|
|
|
|
|
|
NOTE: If you omit the condition definition from a watch, the condition defaults
|
|
|
|
to `always`.
|
|
|
|
|
|
|
|
When a condition is evaluated, it has full access to the watch execution context,
|
|
|
|
including the watch payload (`ctx.payload.*`). The <<condition-script, script>>,
|
|
|
|
<<condition-compare, compare>> and <<condition-array-compare, array_compare>>
|
|
|
|
conditions can use the payload data to determine whether or not the necessary
|
|
|
|
conditions are met.
|
|
|
|
|
2017-11-09 10:13:56 -05:00
|
|
|
In addition to the watch wide condition, you can also configure conditions
|
|
|
|
per <<action-conditions, action>>.
|
|
|
|
|
2017-03-28 17:23:01 -04:00
|
|
|
include::condition/always.asciidoc[]
|
|
|
|
|
|
|
|
include::condition/never.asciidoc[]
|
|
|
|
|
|
|
|
include::condition/compare.asciidoc[]
|
|
|
|
|
|
|
|
include::condition/array-compare.asciidoc[]
|
|
|
|
|
|
|
|
include::condition/script.asciidoc[]
|