Strategies are a way to control play execution. By default, plays run with a linear
strategy, in which all hosts will run each task before any host starts the next task, using the number of forks (default 5) to parallelize.
The serial
directive can ‘batch’ this behaviour to a subset of the hosts, which then run to
completion of the play before the next ‘batch’ starts.
A second strategy
ships with Ansible - free
- which allows each host to run until the end of
the play as fast as it can.:
- hosts: all
strategy: free
tasks:
...
The strategies are implemented as plugins. In the future, new execution strategies can be added, either locally by users or to Ansible itself by a code contribution.
One example is debug
strategy. See Playbook Debugger for details.
See also