From 1df51f3c48e3197e93e0e301a7da50f3eee388d4 Mon Sep 17 00:00:00 2001 From: Chris Meyers Date: Mon, 20 Apr 2015 17:15:03 -0400 Subject: [PATCH] better error handling --- awx/main/management/commands/inventory_import.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/awx/main/management/commands/inventory_import.py b/awx/main/management/commands/inventory_import.py index 51ef9fdf36..ec8da4dc64 100644 --- a/awx/main/management/commands/inventory_import.py +++ b/awx/main/management/commands/inventory_import.py @@ -357,8 +357,9 @@ class ExecutableJsonLoader(BaseLoader): stdout, stderr = proc.communicate() if proc.returncode != 0: raise RuntimeError('%r failed (rc=%d) with output: %s' % (cmd, proc.returncode, stderr)) - data = json.loads(stdout) - if not isinstance(data, dict): + try: + data = json.loads(stdout) + except ValueError: raise TypeError('Returned JSON must be a dictionary, got %s instead' % str(type(data))) except: logger.error('Failed to load JSON from: %s', stdout)