diff --git a/lib/ansible/modules/network/nxos/nxos_facts.py b/lib/ansible/modules/network/nxos/nxos_facts.py index ccedf8a6f4f..5dbae8a2030 100644 --- a/lib/ansible/modules/network/nxos/nxos_facts.py +++ b/lib/ansible/modules/network/nxos/nxos_facts.py @@ -786,10 +786,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):