Conditionals, return values, and registered variables¶
Conditional tasks¶
See Task.
Return Values and registered variables¶
To create a variable with results from a task, use register
:
- name: any task
command: whatever
register: varname
Then in later tasks, you can use varname in conditionals like when
.
The variable is actually an object with lots of useful items in it. Some of them:
.changed
- boolean, whether the task changed anything.failed
- boolean, true if the task failed.skipped
- boolean, true if the task was skipped.result
- ? (depends on the task?).results
- If this key exists, it indicates that a loop was present for the task and that it contains a list of the normal module ‘result’ per item.
There are also useful filters:
is succeeded
- boolean, true if task succeededis failed
- boolean, true if task failedis skipped
= boolean, true if the task was skipped
succeeded
is probably the most useful here - the others just duplicate attributes.