community.general/lib/ansible/executor
James Cammarata ca5b361ad8 Reworking iterator logic regarding failed states during always
Previous changes addressed a corner case, which unfortunately introduced
another bug. This patch adds a new flag to the host state (did_rescue) which
is set to true when the rescue portion of a block completes. This flag is
then checked in _check_failed_state() when the fail_state != FAILED_NONE.

This lead to the discovery of another bug - current strategies are not advancing
hosts to ITERATING_COMPLETE after doing a peek at the next task, leaving the
host state in the run_state of the final task. To address this, before gathering
the list of failed hosts in StrategyBase.run(), a final pass through the iterator
for all hosts is done to ensure each host is in its final state. This way, no
strategy derived from StrategyBase has to worry about it and it's handled.

Fixes #17983
2016-11-16 10:21:46 -06:00
..
process Revert "Move queuing tasks to a background thread" 2016-09-15 17:00:06 -05:00
__init__.py Making the switch to v2 2015-05-03 21:47:26 -05:00
action_write_locks.py Change <support@ansible.com> - it's being retired. 2016-10-15 16:42:13 -07:00
module_common.py open anziballs payload 'wb' for py3 2016-10-03 13:06:50 -07:00
play_iterator.py Reworking iterator logic regarding failed states during always 2016-11-16 10:21:46 -06:00
playbook_executor.py Pass the absolute path to dirname when assigning basedir (#17457) 2016-09-16 08:19:43 -07:00
stats.py Making the switch to v2 2015-05-03 21:47:26 -05:00
task_executor.py Catch loop eval errors and only raise them again if the task is not skipped 2016-11-15 10:39:10 -06:00
task_queue_manager.py Alternately track listening handlers by uuid if no name is set 2016-11-13 15:24:44 -06:00
task_result.py iterate through task results only if the key is not at the root level (#18214) 2016-10-27 09:43:49 -04:00