Skip to content

Commit

Permalink
Allow user to control output of verbose messages (ansible#52948)
Browse files Browse the repository at this point in the history
to stdout (default) or stderr
  • Loading branch information
bcoca authored Mar 5, 2019
1 parent 1160e50 commit 7a0b4a5
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 2 deletions.
2 changes: 2 additions & 0 deletions changelogs/fragments/verbose_stderr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
minor_changes:
- allow user to force verbose messages to stderr
11 changes: 11 additions & 0 deletions lib/ansible/config/base.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1776,4 +1776,15 @@ STRING_CONVERSION_ACTION:
- section: defaults
key: string_conversion_action
type: string
VERBOSE_TO_STDERR:
version_added: '2.8'
description:
- Force 'verbose' option to use stderr instead of stdout
default: False
env:
- name: ANSIBLE_VERBOSE_TO_STDERR
ini:
- section: defaults
key: verbose_to_stderr
type: bool
...
6 changes: 4 additions & 2 deletions lib/ansible/utils/display.py
Original file line number Diff line number Diff line change
Expand Up @@ -201,11 +201,13 @@ def debug(self, msg, host=None):
self.display("%6d %0.5f [%s]: %s" % (os.getpid(), time.time(), host, msg), color=C.COLOR_DEBUG)

def verbose(self, msg, host=None, caplevel=2):

to_stderr = C.VERBOSE_TO_STDERR
if self.verbosity > caplevel:
if host is None:
self.display(msg, color=C.COLOR_VERBOSE)
self.display(msg, color=C.COLOR_VERBOSE, stderr=to_stderr)
else:
self.display("<%s> %s" % (host, msg), color=C.COLOR_VERBOSE)
self.display("<%s> %s" % (host, msg), color=C.COLOR_VERBOSE, stderr=to_stderr)

def deprecated(self, msg, version=None, removed=False):
''' used to print out a deprecation message.'''
Expand Down

0 comments on commit 7a0b4a5

Please sign in to comment.