From 3b012e5bceeb276f8982340dd8112e834eefed12 Mon Sep 17 00:00:00 2001 From: David Wilson Date: Mon, 20 Aug 2018 21:29:57 +0100 Subject: [PATCH] tests: allow plugging in pprint/pprintpp via env. --- tests/ansible/lib/callback/nice_stdout.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/tests/ansible/lib/callback/nice_stdout.py b/tests/ansible/lib/callback/nice_stdout.py index fa720fd2..1f7d7c89 100644 --- a/tests/ansible/lib/callback/nice_stdout.py +++ b/tests/ansible/lib/callback/nice_stdout.py @@ -1,4 +1,5 @@ from __future__ import unicode_literals +import os import io from ansible.module_utils import six @@ -8,6 +9,11 @@ try: except ImportError: from ansible.plugins.loader import callback_loader +try: + pprint = __import__(os.environ['NICE_STDOUT_PPRINT']) +except KeyError: + pprint = None + def printi(tio, obj, key=None, indent=0): def write(s, *args): @@ -50,7 +56,10 @@ class CallbackModule(DefaultModule): def _dump_results(self, result, *args, **kwargs): try: tio = io.StringIO() - printi(tio, result) + if pprint: + pprint.pprint(result, stream=tio) + else: + printi(tio, result) return tio.getvalue() #.encode('ascii', 'replace') except: import traceback