Strategy plugins control the flow of play execution by handling task and host scheduling.
Strategy plugins shipped with Ansible are enabled by default. You can enable a custom strategy plugin by putting it in one of the lookup directory sources configured in ansible.cfg.
Only one strategy plugin can be used in a play, but you can use different ones for each play in a playbook or ansible run. The default is the linear plugin. You can change this default in Ansible configuration using an environment variable:
or in the ansible.cfg file:
You can also specify the strategy plugin in the play via the strategy keyword:
- hosts: all strategy: debug tasks: - copy: src=myhosts dest=/etc/hosts notify: restart_tomcat - package: name=tomcat state=present handlers: - name: restart_tomcat service: name=tomcat state=restarted
You can use
ansible-doc -t strategy -l to see the list of available plugins.
ansible-doc -t strategy <plugin name> to see plugin-specific specific documentation and examples.