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.
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.
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.