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

Strategy Plugins

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

Working With Playbooks
An introduction to playbooks
Playbook organization by roles
User Mailing List
Have a question? Stop by the google group!
#ansible IRC chat channel