generalized warning handling, added it to adhoc also
This commit is contained in:
parent
d4ac73a1bc
commit
1aa4155266
3 changed files with 10 additions and 5 deletions
|
@ -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
|
||||
|
||||
|
|
|
@ -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()
|
||||
|
|
|
@ -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')
|
||||
|
|
Loading…
Reference in a new issue