From: Guillaume Abrioux Date: Thu, 11 May 2023 11:23:22 +0000 (+0200) Subject: node-proxy: add normalize_dict() function X-Git-Tag: v18.2.4~314^2~109 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=99aa1e10387c43816375df247d56f11c52039282;p=ceph.git node-proxy: add normalize_dict() function this is to make sure all keys are converted into lowercase. Signed-off-by: Guillaume Abrioux (cherry picked from commit 15b1122f7af6df3faac21ed4f1834ae826f5abb3) --- diff --git a/src/cephadm/node-proxy/redfish_dell.py b/src/cephadm/node-proxy/redfish_dell.py index 9a611fb7bbe1..c4ccd9add4a6 100644 --- a/src/cephadm/node-proxy/redfish_dell.py +++ b/src/cephadm/node-proxy/redfish_dell.py @@ -1,5 +1,5 @@ from redfish_system import RedfishSystem -from util import logger +from util import logger, normalize_dict log = logger(__name__) @@ -25,7 +25,7 @@ class RedfishDell(RedfishSystem): result[interface_id]['name'] = interface_info['Name'] result[interface_id]['speed_mbps'] = interface_info['SpeedMbps'] result[interface_id]['status'] = interface_info['Status'] - self._system['network'] = result + self._system['network'] = normalize_dict(result) def _update_processors(self): cpus_path = self._system['Processors']['@odata.id'] @@ -45,7 +45,7 @@ class RedfishDell(RedfishSystem): result[cpu_id]['model'] = cpu_info['Model'] result[cpu_id]['status'] = cpu_info['Status'] result[cpu_id]['manufacturer'] = cpu_info['Manufacturer'] - self._system['processors'] = result + self._system['processors'] = normalize_dict(result) def _update_storage(self): storage_path = self._system['Storage']['@odata.id'] @@ -67,7 +67,7 @@ class RedfishDell(RedfishSystem): result[drive_id]['serial_number'] = drive_info['SerialNumber'] result[drive_id]['status'] = drive_info['Status'] result[drive_id]['location'] = drive_info['PhysicalLocation'] - self._system['storage'] = result + self._system['storage'] = normalize_dict(result) def _update_metadata(self): log.info("Updating metadata") diff --git a/src/cephadm/node-proxy/util.py b/src/cephadm/node-proxy/util.py index d70e99fc4f38..f976814c0ce1 100644 --- a/src/cephadm/node-proxy/util.py +++ b/src/cephadm/node-proxy/util.py @@ -10,3 +10,12 @@ def logger(name, level=logging.INFO): logger.addHandler(handler) return logger + +def normalize_dict(test_dict): + res = dict() + for key in test_dict.keys(): + if isinstance(test_dict[key], dict): + res[key.lower()] = normalize_dict(test_dict[key]) + else: + res[key.lower()] = test_dict[key] + return res