From 27685242d2fd72c9aba6c681939d3a4d6e2d7ef8 Mon Sep 17 00:00:00 2001 From: Steve Keay Date: Thu, 27 Mar 2025 12:55:33 +0000 Subject: [PATCH 1/2] Show more detail about LLDP neighbors when we don't have enough --- .../understack-workflows/understack_workflows/discover.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/python/understack-workflows/understack_workflows/discover.py b/python/understack-workflows/understack_workflows/discover.py index 864c9f82c..284081c79 100644 --- a/python/understack-workflows/understack_workflows/discover.py +++ b/python/understack-workflows/understack_workflows/discover.py @@ -29,11 +29,15 @@ def discover_chassis_info(bmc: Bmc) -> ChassisInfo: attempts_remaining = LLDP_DISCOVERY_ATTEMPTS while len(device_info.neighbors) < MIN_REQUIRED_NEIGHBOR_COUNT: + lldp_table = { + i.name: f"{i.remote_switch_mac_address}/{i.remote_switch_port_name}" + for i in device_info.interfaces + } logger.info( - "%s does not have enough LLDP neighbors (saw %d), need at least %d. ", + "%s does not have enough LLDP neighbors, need %d or more, got %s", bmc, - len(device_info.neighbors), MIN_REQUIRED_NEIGHBOR_COUNT, + lldp_table, ) if not attempts_remaining: raise Exception( From db0e33f59319926388637454b5980d1a5c2e3c81 Mon Sep 17 00:00:00 2001 From: Steve Keay Date: Thu, 27 Mar 2025 12:56:08 +0000 Subject: [PATCH 2/2] Don't set HTTP device (PXE) interface We don't use this - we are leaving it at the default "disabled" mode. On some iDRAC firmware, trying to set this while it is disabled results in an error, which aborts the whole enroll process. So, removing this setting will get rid of the error. If we start using it, and therefore "enable" the HttpDev1, this setting can be re-instated. --- python/understack-workflows/understack_workflows/bmc_bios.py | 1 - 1 file changed, 1 deletion(-) diff --git a/python/understack-workflows/understack_workflows/bmc_bios.py b/python/understack-workflows/understack_workflows/bmc_bios.py index 5297e81e5..6d446873a 100644 --- a/python/understack-workflows/understack_workflows/bmc_bios.py +++ b/python/understack-workflows/understack_workflows/bmc_bios.py @@ -11,7 +11,6 @@ def required_bios_settings(pxe_interface: str) -> dict: return { "PxeDev1EnDis": "Enabled", "PxeDev1Interface": pxe_interface, - "HttpDev1Interface": pxe_interface, "TimeZone": "UTC", }