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
|
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
|
||||||
|
|
||||||
|
|
|
@ -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()
|
||||||
|
|
|
@ -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')
|
||||||
|
|
Loading…
Reference in a new issue