Friday, 2026-08-14

opendevreviewDoug Goldstein proposed openstack/ironic stable/2026.1: Fix BIOS firmware update failure detection on Dell iDRAC  https://review.opendev.org/c/openstack/ironic/+/100092100:35
opendevreviewDoug Goldstein proposed openstack/ironic bugfix/37.0: Fix BIOS firmware update failure detection on Dell iDRAC  https://review.opendev.org/c/openstack/ironic/+/100092200:35
opendevreviewDoug Goldstein proposed openstack/ironic bugfix/38.0: Fix BIOS firmware update failure detection on Dell iDRAC  https://review.opendev.org/c/openstack/ironic/+/100092300:36
opendevreviewRico Lin proposed openstack/ironic master: Pass explicit virtual media protocol to Sushy  https://review.opendev.org/c/openstack/ironic/+/99746408:24
opendevreviewRico Lin proposed openstack/ironic master: Allow image publisher aliases for hardware types  https://review.opendev.org/c/openstack/ironic/+/99780608:26
opendevreviewRico Lin proposed openstack/ironic master: Pass explicit virtual media protocol to Sushy  https://review.opendev.org/c/openstack/ironic/+/99746408:32
TheJuliacardoe: regarding ricolin's change, I guess I've planted an idea on there. TBH, not a fan of it, but I can kind of see what/why and where he is trying to go.13:37
TheJuliaThat would be https://review.opendev.org/c/openstack/ironic/+/99780613:37
opendevreviewMerged openstack/ironic stable/2026.1: Fix BIOS firmware update failure detection on Dell iDRAC  https://review.opendev.org/c/openstack/ironic/+/100092113:52
opendevreviewMerged openstack/ironic bugfix/38.0: Fix BIOS firmware update failure detection on Dell iDRAC  https://review.opendev.org/c/openstack/ironic/+/100092313:52
opendevreviewMerged openstack/ironic bugfix/37.0: Fix BIOS firmware update failure detection on Dell iDRAC  https://review.opendev.org/c/openstack/ironic/+/100092213:52
*** hroy_ is now known as hroy14:20
opendevreviewVerification of a change to openstack/python-ironicclient master failed: Add --disable-ramdisk to runbook set/unset  https://review.opendev.org/c/openstack/python-ironicclient/+/100011315:09
cardoeTheJulia: yeah I agree with you15:41
TheJuliaI can see merging it with that in mind though, something always better than nothing, I just don't like explicit config mapping for the by name attribute. Honestly, the invocation could include a task as an option characteristic and there could just be a map matching option on the driver in the model. Just not a fan of human mapped config16:03
*** hroy_ is now known as hroy16:16
opendevreviewMerged openstack/ironic-python-agent master: Enforce checksum algorithm validation for Nvidia NIC firmware  https://review.opendev.org/c/openstack/ironic-python-agent/+/100001816:25
JayFTheJulia: I'm shocked your review of that didn't come with a -1 or -2, honestly. I'm not going to point my brain at it enough today to do so myself, but that config var SCREAMS "I'm a decoder ring" 16:30
opendevreviewMerged openstack/ironic-python-agent master: Change md5_enabled default to False  https://review.opendev.org/c/openstack/ironic-python-agent/+/100001916:32
opendevreviewMerged openstack/ironic master: Allow disable_ramdisk to be updated via runbook PATCH  https://review.opendev.org/c/openstack/ironic/+/100005916:33
TheJuliaI guess I'm mentally more lienent given its coming from a "I have a downstream hardware type" place, so its sort of their own made problem16:42
TheJuliabut yeah, I'm really not a fan of it either16:42
opendevreviewMerged openstack/ironic master: Fix socat console broken by shell-quoting  https://review.opendev.org/c/openstack/ironic/+/99970116:46
opendevreviewMerged openstack/ironic master: Add request context user tracking to node history records  https://review.opendev.org/c/openstack/ironic/+/99390116:46
JayFTheJulia: if they have a downstream hardware type, they can invest the time to help make it actually-pluggable or hold a downstream patch16:52
JayFI don't think the middle route of a mid-rare baked idea getting merged is the best one here16:52
TheJuliafair, I'm working on another item right now, I might propose a clean path forward if I am not fighting claude much longer16:52
opendevreviewcid proposed openstack/ironic stable/2026.1: Fix socat console broken by shell-quoting  https://review.opendev.org/c/openstack/ironic/+/100098416:53
opendevreviewcid proposed openstack/ironic stable/2025.2: Fix socat console broken by shell-quoting  https://review.opendev.org/c/openstack/ironic/+/100098516:54
opendevreviewcid proposed openstack/ironic stable/2025.1: Fix socat console broken by shell-quoting  https://review.opendev.org/c/openstack/ironic/+/100098616:54
opendevreviewJulia Kreger proposed openstack/networking-generic-switch master: Add opt-in MTU management for switch ports  https://review.opendev.org/c/openstack/networking-generic-switch/+/98483217:08
opendevreviewMerged openstack/python-ironicclient master: Add --disable-ramdisk to runbook set/unset  https://review.opendev.org/c/openstack/python-ironicclient/+/100011317:20
cardoeJayF: TheJulia: you two know that I've got downstream hardware types... I'm working at sanding down the rough edges as well for those interfaces.17:21
cardoeBut I'm doing what JayF said... until I can land said feature / functionality then I'm holding a downstream patch.17:21
JayFmaybe you and Rico can find the intersection of how to make that more properly pluggable?17:21
TheJuliaI think in this case, there are a few solutions as well, but someone just needs to do it17:22
TheJulianext patch will be that from me17:22
cardoeYeah I've reached out to him. We're unfortunately in the literal worst time delta. He starts his day 9pm my time and ends his day 5am my time.17:22
cardoeIt's not just this. He's using OpenStack Helm and working on supporting the new console stuff... which is something we're doing as well.17:23
cardoeHe's also working on OVN backend for Octavia for baremetal. And we are as well.17:24
JayFwe have all the tools to work async, it just stinks that makes it hard to transfer all the initial context17:24
TheJuliacardoe: do you know if he going to the summit?17:25
cardoeI don't17:25
TheJuliaokay17:25
opendevreviewcid proposed openstack/ironic unmaintained/2024.1: Fix socat console broken by shell-quoting  https://review.opendev.org/c/openstack/ironic/+/100098917:27
opendevreviewJulia Kreger proposed openstack/ironic master: Add NVMe-oF volume connector and target type support  https://review.opendev.org/c/openstack/ironic/+/99170017:34
opendevreviewcid proposed openstack/ironic unmaintained/2023.1: Fix socat console broken by shell-quoting  https://review.opendev.org/c/openstack/ironic/+/100099017:36
opendevreviewJulia Kreger proposed openstack/ironic master: Let boot interfaces declare image publisher settings  https://review.opendev.org/c/openstack/ironic/+/100099618:16
TheJuliacardoe: JayF ^^^18:16
TheJuliaJayF: replied to your comment, technically we are moving the default there because the same interface is used18:25
cardoeTheJulia: so my review would be to not use a dict but instead define a dataclass with the fields.18:32
cardoeBut I'm not sure how much that complicates the fallback case.18:33
cardoeLikely not that much actually.18:34
cardoeTheJulia: can I rudely push over the top?18:42
TheJuliago ahead, but the class being loaded defines it is my point, the original behavior to hw type strict mapping was always wrong18:46
cardoeagreed18:47
TheJuliaso, the class being loaded in the driver, i.e. the boot interface, is the information point18:47
TheJuliamakes it nice and direct too18:47
opendevreviewDoug Goldstein proposed openstack/ironic master: Let boot interfaces declare image publisher settings  https://review.opendev.org/c/openstack/ironic/+/100099618:54
cardoeHopefully you don't dislike that.18:56
TheJuliaseems okay to me18:57
opendevreviewJulia Kreger proposed openstack/ironic-specs master: ROCE Enabled BMaaS  https://review.opendev.org/c/openstack/ironic-specs/+/99041319:58
cardoeDo we want a spec for me adding an API and access method for the LogService of Redfish?20:11
TheJuliawhat problem are you attempting to solve with that?20:12
TheJuliaI guess I could see accessing logs handy if you've got a vendor on the phone on some level20:15
cardoeWe don't un-enroll our nodes and all that jazz. We use Ironic power checker to ensure the boxes are powered on.20:15
TheJuliabecause the alternative is.. page level 3/4 to do that20:15
cardoeSo I've got folks wanting iDRAC access still to these Dell boxes.20:15
cardoeSo I'm being evil and saying "no" and making them express what they need want.20:16
* TheJulia gets out the "evil" shirt to better understand the ask20:16
cardoeOne of the items they brought up are the hardware logs. It turns out that Redfish standardizes the hardware logs. IPMI did as well and they were called SEL but they're a subset of the actual log events.20:16
TheJuliayeah20:17
TheJuliatrue20:17
cardoeYes. Today is "evil" shirt day for sure.20:17
TheJuliaI could see "retreive hardware logs' being a reasonable thing and is functionally generic20:17
TheJuliabecause of LogService or ipmitool sel20:17
cardoeA little birdy in Austin tells me the Redfish LogService has got it all20:17
TheJuliaoh, I'm sure it does20:18
TheJuliaso question is, do we store the log or do we just go ask the bmc each time? Or do we cache it for a short time ? I guess the other question is "how much"20:19
cardoehttps://github.com/dell/iDRAC-Redfish-Scripting/blob/master/Redfish%20Python/SupportAssistCollectionNetworkShareREDFISH.py20:19
cardoeThat's a them specific feature that's required for certain RMA and such operations.20:19
TheJuliaugh20:19
cardoeSo I'm gonna wire that up to a vendor passthru method for the idrac-redfish if that makes sense.20:20
cardoeSo let's table that item.20:21
cardoeBut the LogService interface isn't horrible.20:21
TheJuliaI mean, it does sort of make sense, but at RMA I could see paging an "adminy" individual20:21
TheJuliabut for general logservie, yeah20:21
cardoeBut it's ambiguous because it exists on the Chassis and ComputerSystem object. We have a link in sushy but no implementation20:22
cardoeEach entry has an ID and you fetch that specific entry20:22
cardoeThere's a fetch depth syntax that we've done in other places but alas it's "vendor defined" how to handle a large amount.20:23
TheJuliaI haven't looked deeply at logservice before, but I know chassis also tends to be more bmc orientation, where computersystem is the instance which boots the host and they've moved some stuff around as time has moved on20:23
TheJuliayeah, afaik not universally supported though20:23
cardoeSo I fear some vendors will paginate... some will truncate... some will truncate returning the first X items from the beginning of time and some will truncate returning the X most recent items.20:23
cardoeSo I feel like the safest interface for us is to fetch a list of IDs on one endpoint and the other endpoint just look up individual IDs.20:24
TheJuliahmmm20:24
TheJuliaquite possibly20:24
TheJuliaseems... not great20:25
TheJuliabut... its designed that way for some reason20:25
cardoeYou know that we'll sit here and come up with all possible ways that a vendor will interpret "vendor defined" and then we'll go to actual hardware and discover yet another.20:25
TheJuliayeah20:25
cardoeWe can certainly make our fetch accept a list of IDs if we want to optimize?20:26
cardoeCause that data would have to traverse the RPC pathway from API node to conductor and back20:26
TheJuliaso, looking at the model20:27
TheJuliaI wonder if we can get to batch and retrieve20:27
cardoeSo to give you an idea they'll see like a CPU fault or something like that and then know they need to swap the CPU out.20:29
cardoeor PSU fault and swap that out.20:29
TheJuliaoh yeah20:29
TheJuliaI grok that20:29
TheJuliaI'm more trying to mentally model how we don't create a slog for 30 characters with like 4kb of network traffic to get that 30 characters20:29
cardoeToday our folks are slinging racadm commands against that gear. So I'm just thinking how I can make their interface be entirely the "baremetal" command.20:30
TheJulia++20:30
cardoeNo you're absolutely right. I was looking at how to batch it as well.20:30
cardoeThe vendor defined made me nervous.20:30
TheJuliathere does seem to be some level of consistency20:31
TheJuliabut.. yeah20:31
TheJuliaI'd ask the conductor to get the "last 10" by default and return it over rpc20:31
TheJuliaand make it user requestable just how much with an understanding or an upper bound limit in the config of 100-150 entries20:32
cardoeyeah we can do that. I'll whip up a spec.20:32
TheJuliamost of the time I've had to look at hardware logs, it hasn't been *THAT* verbose20:32
cardoeShould we make it possible to request a specific one?20:32
TheJuliaonly when I have a bad memory stick20:32
TheJuliathat feels more like modeling redfish into our api20:32
cardoeand then should we make it possible to look at Chassis and System or should we just merge the two together... The redfish example data actually has the endpoints returning different things but then for 1 item returning the same ID from both endpoints. And they do mention that it means its the same message logged to both.20:33
TheJuliaugh, yeah20:33
TheJuliaso... maybe BMC log and system as separate logs20:34
TheJuliabecause, you can have one BMC with subsystems20:34
cardoeI've literally not even thrown a curl against the redfish endpoint on the gear I've got yet.20:34
cardoeBut if its possible then someone will do it is how I feel.20:34
cardoeI'll take our convo and craft an initial spec and let folks provide some feedback.20:35
cardoeThe other item that came up is that Ironic's node health is quite lacking.20:35
cardoeAnd I unfortunately had to agree.20:36
cardoeSo we have get_node_health() on the management interface which in the redfish side calls the overall system rollup health status and returns that20:37
cardoeBut there's technically subsystem / component level as well20:37
cardoeAnd once again there's chassis vs system20:37
cardoeYou can have a bad memory card for the BMC for example and get_node_health() rolls up healthy20:39
cardoeYou can have a component with a warning and get_node_health() rolls up healthy20:39
cardoeClaude's hot take of the Redfish spec is that the system health rollup is only triggered by errors on the child components not by warnings.20:40
cardoeIt's a slippery slope of hardware monitoring though. Cause I can see that being expensive from a scraping of APIs if people are polling it.20:41
cardoeBut as a one off tell me about this box... that's certainly got value20:42
cardoethe iDRAC has the overall and then component status on the front page when you login.20:42
cardoehttps://github.com/dell/iDRAC-Redfish-Scripting/blob/master/Redfish%20Python/GetIdracLcLogsREDFISH.py that's Dell's script. 14G and newer hardware conforms to the Redfish spec.20:51
cardoeThat's the LogService stuff. They call it the Lifecycle Controller Logs20:51
TheJuliaEBRAINOVERFLOW :)21:03
TheJuliayeah, rollup is only errors which are faults21:04
opendevreviewMerged openstack/ironic master: dev/test: Enable graphical console in localdev config  https://review.opendev.org/c/openstack/ironic/+/100056621:06

Generated by irclog2html.py 4.1.0 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!