Execution.
authorOleksandr Gavenko <gavenkoa@gmail.com>
Wed, 04 Nov 2020 21:46:58 +0200
changeset 2447 cb043d4756a2
parent 2446 ad63d001b5f4
child 2448 1a02d5429a5d
Execution.
ansible.rst
--- a/ansible.rst	Tue Nov 03 19:31:40 2020 +0200
+++ b/ansible.rst	Wed Nov 04 21:46:58 2020 +0200
@@ -91,12 +91,21 @@
   Magic variables.
 https://docs.ansible.com/ansible/latest/user_guide/playbooks_vars_facts.html
   Discovering variables: facts and magic variables.
+https://docs.ansible.com/ansible/latest/collections/ansible/builtin/set_fact_module.html
+  ``ansible.builtin.set_fact`` – Set host facts from a task.
 
 Inventory:
 
 https://docs.ansible.com/ansible/latest/collections/ansible/builtin/generator_inventory.html
   Uses Jinja2 to construct hosts and groups from patterns.
 
+Collections:
+
+https://docs.ansible.com/ansible/latest/user_guide/collections_using.html
+  Using collections.
+https://docs.ansible.com/ansible/2.10/collections/index.html
+  Collection Index.
+
 Inclusion:
 
 https://docs.ansible.com/ansible/latest/collections/ansible/builtin/include_module.html
@@ -109,6 +118,21 @@
 https://docs.ansible.com/ansible/latest/user_guide/playbooks_filters.html
   Using filters to manipulate data.
 
+Execution:
+
+https://docs.ansible.com/ansible/latest/user_guide/playbooks_strategies.html
+  Controlling playbook execution: strategies and more.
+https://docs.ansible.com/ansible/latest/plugins/strategy.html
+  Strategy Plugins.
+https://docs.ansible.com/ansible/latest/user_guide/playbooks_delegation.html
+  Controlling where tasks run: delegation and local actions.
+https://docs.ansible.com/ansible/latest/reference_appendices/general_precedence.html
+  Controlling how Ansible behaves: precedence rules.
+https://docs.ansible.com/ansible/latest/user_guide/playbooks_handlers.html
+  Handlers: running operations on change.
+https://docs.ansible.com/ansible/latest/collections/ansible/builtin/setup_module.html
+  ansible.builtin.setup – Gathers facts about remote hosts.
+
 Search path
 ===========
 
@@ -134,3 +158,25 @@
 https://docs.ansible.com/ansible/latest/user_guide/playbooks_templating.html
   Templating (Jinja2).
 
+Execution
+=========
+
+``-f`` option controls forking: how many executors are started to perform tasks.
+
+The way tasks are processed depends on ``strategy`` and ``serial``.
+
+``strategy`` * ``serial`` can be defined on each ``hosts`` in a play::
+
+  - hosts: web
+    strategy: free
+    serial: 50%
+  - hosts: db
+    strategy: linear
+    serial: 1
+
+* With ``linear`` strategy all workers execute the same tasks, idling until every is finished the
+  task. Then next task is executed. ``serial`` sets how many hosts at a time to run at a time to the
+  end of subplay.
+* With ``free`` strategy tasks are executed without waiting for completion of the same task on every
+  host.
+