generalized warning handling, added it to adhoc also

This commit is contained in:
Brian Coca 2015-07-17 14:14:15 -04:00
parent d4ac73a1bc
commit 1aa4155266
3 changed files with 10 additions and 5 deletions

View file

@ -21,6 +21,8 @@ __metaclass__ = type
import json import json
from ansible import constants as C
__all__ = ["CallbackBase"] __all__ = ["CallbackBase"]
@ -46,6 +48,12 @@ class CallbackBase:
def _dump_results(self, result, indent=4, sort_keys=True): def _dump_results(self, result, indent=4, sort_keys=True):
return json.dumps(result, indent=indent, ensure_ascii=False, sort_keys=sort_keys) 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): def set_connection_info(self, conn_info):
pass pass

View file

@ -19,7 +19,6 @@
from __future__ import (absolute_import, division, print_function) from __future__ import (absolute_import, division, print_function)
__metaclass__ = type __metaclass__ = type
from ansible import constants as C
from ansible.plugins.callback import CallbackBase from ansible.plugins.callback import CallbackBase
class CallbackModule(CallbackBase): class CallbackModule(CallbackBase):
@ -72,10 +71,7 @@ class CallbackModule(CallbackBase):
msg += " => %s" % self._dump_results(result._result, indent=indent) msg += " => %s" % self._dump_results(result._result, indent=indent)
self._display.display(msg, color=color) self._display.display(msg, color=color)
# display warnings, if enabled and any exist in the result self._handle_warnings(result._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')
def v2_runner_on_skipped(self, result): def v2_runner_on_skipped(self, result):
msg = "skipping: [%s]" % result._host.get_name() msg = "skipping: [%s]" % result._host.get_name()

View file

@ -51,6 +51,7 @@ class CallbackModule(CallbackBase):
def v2_runner_on_ok(self, result): 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._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): def v2_runner_on_skipped(self, result):
self._display.display("%s | SKIPPED" % (result._host.get_name()), color='cyan') self._display.display("%s | SKIPPED" % (result._host.get_name()), color='cyan')