diff --git a/lib/ansible/modules/network/nxos/nxos_facts.py b/lib/ansible/modules/network/nxos/nxos_facts.py index 157974e7f2..4dab8ae4ca 100644 --- a/lib/ansible/modules/network/nxos/nxos_facts.py +++ b/lib/ansible/modules/network/nxos/nxos_facts.py @@ -822,10 +822,16 @@ class Legacy(FactsBase): def parse_structured_power_supply_info(self, data): if data.get('powersup').get('TABLE_psinfo_n3k'): - data = data['powersup']['TABLE_psinfo_n3k']['ROW_psinfo_n3k'] + fact = data['powersup']['TABLE_psinfo_n3k']['ROW_psinfo_n3k'] else: - data = data['powersup']['TABLE_psinfo']['ROW_psinfo'] - objects = list(self.transform_iterable(data, self.POWERSUP_MAP)) + if isinstance(data['powersup']['TABLE_psinfo'], list): + fact = [] + for i in data['powersup']['TABLE_psinfo']: + fact.append(i['ROW_psinfo']) + else: + fact = data['powersup']['TABLE_psinfo']['ROW_psinfo'] + + objects = list(self.transform_iterable(fact, self.POWERSUP_MAP)) return objects def parse_hostname(self, data):