Coverage for lib/ansible/plugins/callback/stderr.py : 26%

Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
# (c) 2017, Frederic Van Espen <github@freh.be> # (c) 2017 Ansible Project # GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
# Make coding more python3-ish
callback: stderr callback_type: stdout requirements: - set as main display callback short_description: Splits output, sending failed tasks to stderr version_added: "2.4" extends_documentation_fragment: - default_callback description: - This is the stderr callback plugin, it behaves like the default callback plugin but sends error output to stderr. - Also it does not output skipped host/task/item status '''
''' This is the stderr callback plugin, which reuses the default callback plugin but sends error output to stderr. '''
self.super_ref = super(CallbackModule, self) self.super_ref.__init__()
delegated_vars = result._result.get('_ansible_delegated_vars', None) self._clean_results(result._result, result._task.action)
if self._play.strategy == 'free' and self._last_task_banner != result._task._uuid: self._print_task_banner(result._task)
self._handle_exception(result._result, errors_to_stderr=True) self._handle_warnings(result._result)
if result._task.loop and 'results' in result._result: self._process_items(result)
else: if delegated_vars: self._display.display("fatal: [%s -> %s]: FAILED! => %s" % (result._host.get_name(), delegated_vars['ansible_host'], self._dump_results(result._result)), color=C.COLOR_ERROR, stderr=True) else: self._display.display("fatal: [%s]: FAILED! => %s" % (result._host.get_name(), self._dump_results(result._result)), color=C.COLOR_ERROR, stderr=True)
if ignore_errors: self._display.display("...ignoring", color=C.COLOR_SKIP)
if 'exception' in result: msg = "An exception occurred during task execution. " if self._display.verbosity < 3: # extract just the actual error message from the exception text error = result['exception'].strip().split('\n')[-1] msg += "To see the full traceback, use -vvv. The error was: %s" % error else: msg = "The full traceback is:\n" + result['exception'] del result['exception']
self._display.display(msg, color=C.COLOR_ERROR, stderr=errors_to_stderr) |