mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-04-26 04:11:25 -07:00
better cleanup on task results display (#27175)
* better cleanup on task results display callbacks get 'clean' copy of result objects moved cleanup into result object itself removed now redundant callback cleanup moved no_log tests * moved import as per feedback
This commit is contained in:
parent
03abce2d39
commit
01b6c7c9c6
6 changed files with 64 additions and 19 deletions
|
@ -27,6 +27,7 @@ from ansible import constants as C
|
|||
from ansible.errors import AnsibleError
|
||||
from ansible.executor.play_iterator import PlayIterator
|
||||
from ansible.executor.stats import AggregateStats
|
||||
from ansible.executor.task_result import TaskResult
|
||||
from ansible.module_utils.six import string_types
|
||||
from ansible.module_utils._text import to_text
|
||||
from ansible.playbook.block import Block
|
||||
|
@ -371,9 +372,20 @@ class TaskQueueManager:
|
|||
if gotit is not None:
|
||||
methods.append(gotit)
|
||||
|
||||
# send clean copies
|
||||
new_args = []
|
||||
for arg in args:
|
||||
# FIXME: add play/task cleaners
|
||||
if isinstance(arg, TaskResult):
|
||||
new_args.append(arg.clean_copy())
|
||||
# elif isinstance(arg, Play):
|
||||
# elif isinstance(arg, Task):
|
||||
else:
|
||||
new_args.append(arg)
|
||||
|
||||
for method in methods:
|
||||
try:
|
||||
method(*args, **kwargs)
|
||||
method(*new_args, **kwargs)
|
||||
except Exception as e:
|
||||
# TODO: add config toggle to make this fatal or not?
|
||||
display.warning(u"Failure using method (%s) in callback plugin (%s): %s" % (to_text(method_name), to_text(callback_plugin), to_text(e)))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue