nxos_facts: Don't fail if faninfo isn't reported (#66866)

pull/66950/head
Nathaniel Case 5 years ago committed by GitHub
parent 72e1716f29
commit bf65e7a3f6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -0,0 +1,2 @@
bugfixes:
- "nxos_facts: Don't throw an error if faninfo is not reported."

@ -622,13 +622,19 @@ class Legacy(FactsBase):
def parse_structured_fan_info(self, data): def parse_structured_fan_info(self, data):
objects = list() objects = list()
if data.get('fandetails'):
data = data['fandetails']['TABLE_faninfo']['ROW_faninfo'] for key in ("fandetails", "fandetails_3k"):
elif data.get('fandetails_3k'): if data.get(key):
data = data['fandetails_3k']['TABLE_faninfo']['ROW_faninfo'] try:
else: data = data[key]['TABLE_faninfo']['ROW_faninfo']
return objects except KeyError:
objects = list(self.transform_iterable(data, self.FAN_MAP)) # Some virtual images don't actually report faninfo. In this case, move on and
# just return an empty list.
pass
else:
objects = list(self.transform_iterable(data, self.FAN_MAP))
break
return objects return objects
def parse_structured_power_supply_info(self, data): def parse_structured_power_supply_info(self, data):

Loading…
Cancel
Save