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:
export ANSIBLE_STRATEGY=free
or in the ansible.cfg file:
[defaults]
strategy=linear
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.
Use ansible-doc -t strategy <plugin name>
to see plugin-specific specific documentation and examples.
See also