mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-05-08 14:22:46 +00:00
calculate max fail against all hosts in batch
currently it is doing only from the 'active' hosts in the batch which means the percentage goes up as hosts fail instead of staying the same. added debug info for max fail fixes #32255
This commit is contained in:
committed by
Toshio Kuratomi
parent
41685fb516
commit
4fb9e54c50
@@ -401,7 +401,7 @@ class StrategyModule(StrategyBase):
|
||||
if iterator._play.max_fail_percentage is not None and len(results) > 0:
|
||||
percentage = iterator._play.max_fail_percentage / 100.0
|
||||
|
||||
if (len(self._tqm._failed_hosts) / len(results)) > percentage:
|
||||
if (len(self._tqm._failed_hosts) / iterator.batch_size) > percentage:
|
||||
for host in hosts_left:
|
||||
# don't double-mark hosts, or the iterator will potentially
|
||||
# fail them out of the rescue/always states
|
||||
@@ -410,6 +410,7 @@ class StrategyModule(StrategyBase):
|
||||
iterator.mark_host_failed(host)
|
||||
self._tqm.send_callback('v2_playbook_on_no_hosts_remaining')
|
||||
result |= self._tqm.RUN_FAILED_BREAK_PLAY
|
||||
display.debug('(%s failed / %s total )> %s max fail' % (len(self._tqm._failed_hosts), iterator.batch_size, percentage))
|
||||
display.debug("done checking for max_fail_percentage")
|
||||
|
||||
display.debug("checking to see if all hosts have failed and the running result is not ok")
|
||||
|
||||
Reference in New Issue
Block a user