From bb37d76d8987e7b2fc53c558934f1a77d70ade92 Mon Sep 17 00:00:00 2001 From: Andy Yan Date: Tue, 18 Oct 2016 15:26:56 +0800 Subject: [PATCH] [API] Nodes get KeyError: 'Members' Closes-Bug: #1634381 Change-Id: Ie363dc77ffe2bb6d750e4b419439b32b7a236182 Signed-off-by: Andy Yan --- valence/common/redfish/api.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/valence/common/redfish/api.py b/valence/common/redfish/api.py index d426789..33ba1cb 100644 --- a/valence/common/redfish/api.py +++ b/valence/common/redfish/api.py @@ -159,7 +159,10 @@ def urls2list(url): # This will extract the url values from @odata.id inside Members resp = send_request(url) respdata = resp.json() - return [u['@odata.id'] for u in respdata['Members']] + if 'Members' in respdata: + return [u['@odata.id'] for u in respdata['Members']] + else: + return [] def extract_val(data, path): @@ -397,7 +400,8 @@ def nodes_list(count=None, filters={}): if "Memory" in node: ram = node["Memory"]["TotalSystemMemoryGiB"] - if "EthernetInterfaces" in node["Links"]: + if "EthernetInterfaces" in node["Links"] and node[ + "Links"]["EthernetInterfaces"]: nw = len(node["Links"]["EthernetInterfaces"]) bmcip = "127.0.0.1" # system['Oem']['Dell_G5MC']['BmcIp']