From c6c3ce66160e12c3fa5f7768b0fc8498486e1677 Mon Sep 17 00:00:00 2001 From: Ferry Boender Date: Sat, 26 Sep 2015 18:25:58 +0200 Subject: [PATCH] Output proper JSON from vbox dynamic inventory contrib script --- contrib/inventory/vbox.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/contrib/inventory/vbox.py b/contrib/inventory/vbox.py index 630d955fed5..bd926b38e91 100755 --- a/contrib/inventory/vbox.py +++ b/contrib/inventory/vbox.py @@ -23,6 +23,11 @@ try: except ImportError: import simplejson as json +class SetEncoder(json.JSONEncoder): + def default(self, obj): + if isinstance(obj, set): + return list(obj) + return json.JSONEncoder.default(self, obj) VBOX="VBoxManage" @@ -110,5 +115,4 @@ if __name__ == '__main__': else: inventory = get_hosts() - import pprint - pprint.pprint(inventory) + sys.stdout.write(json.dumps(inventory, indent=2, cls=SetEncoder))