diff --git a/lib/ansible/plugins/callback/__init__.py b/lib/ansible/plugins/callback/__init__.py index ea56d758a7e..de5a92837fe 100644 --- a/lib/ansible/plugins/callback/__init__.py +++ b/lib/ansible/plugins/callback/__init__.py @@ -21,6 +21,8 @@ __metaclass__ = type import json +from ansible import constants as C + __all__ = ["CallbackBase"] @@ -46,6 +48,12 @@ class CallbackBase: def _dump_results(self, result, indent=4, sort_keys=True): return json.dumps(result, indent=indent, ensure_ascii=False, sort_keys=sort_keys) + def _handle_warnings(self, res): + ''' display warnings, if enabled and any exist in the result ''' + if C.COMMAND_WARNINGS and 'warnings' in res and res['warnings']: + for warning in res['warnings']: + self._display.warning(warning) + def set_connection_info(self, conn_info): pass diff --git a/lib/ansible/plugins/callback/default.py b/lib/ansible/plugins/callback/default.py index b3ac6ca8ddc..8fbb0654bef 100644 --- a/lib/ansible/plugins/callback/default.py +++ b/lib/ansible/plugins/callback/default.py @@ -19,7 +19,6 @@ from __future__ import (absolute_import, division, print_function) __metaclass__ = type -from ansible import constants as C from ansible.plugins.callback import CallbackBase class CallbackModule(CallbackBase): @@ -72,10 +71,7 @@ class CallbackModule(CallbackBase): msg += " => %s" % self._dump_results(result._result, indent=indent) self._display.display(msg, color=color) - # display warnings, if enabled and any exist in the result - if C.COMMAND_WARNINGS and 'warnings' in result._result and result._result['warnings']: - for warning in result._result['warnings']: - self._display.display("warning: %s" % warning, color='purple') + self._handle_warnings(result._result) def v2_runner_on_skipped(self, result): msg = "skipping: [%s]" % result._host.get_name() diff --git a/lib/ansible/plugins/callback/minimal.py b/lib/ansible/plugins/callback/minimal.py index dd61ee023a1..8b3ac325eb3 100644 --- a/lib/ansible/plugins/callback/minimal.py +++ b/lib/ansible/plugins/callback/minimal.py @@ -51,6 +51,7 @@ class CallbackModule(CallbackBase): def v2_runner_on_ok(self, result): self._display.display("%s | SUCCESS => %s" % (result._host.get_name(), self._dump_results(result._result)), color='green') + self._handle_warnings(result._result) def v2_runner_on_skipped(self, result): self._display.display("%s | SKIPPED" % (result._host.get_name()), color='cyan')