Fix meta tasks used with --flush-cache (#71311) (#71358)

* Remove incorrect code

(cherry picked from commit 88bfc7977d)
This commit is contained in:
Sloane Hertel 2020-08-27 13:23:58 -04:00 committed by GitHub
parent 4dece71417
commit 4cfe2cf8dc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 4 additions and 2 deletions

View file

@ -0,0 +1,2 @@
bugfixes:
- Fix execution of the meta tasks 'clear_facts', 'clear_host_errors', 'end_play', 'end_host', and 'reset_connection' when the CLI flag '--flush-cache' is provided.

View file

@ -198,7 +198,6 @@ class StrategyBase:
self._final_q = tqm._final_q
self._step = context.CLIARGS.get('step', False)
self._diff = context.CLIARGS.get('diff', False)
self.flush_cache = context.CLIARGS.get('flush_cache', False)
# the task cache is a dictionary of tuples of (host.name, task._uuid)
# used to find the original task object of in-flight tasks and to store
@ -1138,6 +1137,7 @@ class StrategyBase:
skipped = False
msg = ''
# The top-level conditions should only compare meta_action
if meta_action == 'noop':
# FIXME: issue a callback for the noop here?
if task.when:
@ -1150,7 +1150,7 @@ class StrategyBase:
self.run_handlers(iterator, play_context)
self._flushed_hosts[target_host] = False
msg = "ran handlers"
elif meta_action == 'refresh_inventory' or self.flush_cache:
elif meta_action == 'refresh_inventory':
if task.when:
self._cond_not_supported_warn(meta_action)
self._inventory.refresh_inventory()