Friday, 2025-12-05

opendevreviewMerged openstack/ironic master: Add a conductor liveness check utility script  https://review.opendev.org/c/openstack/ironic/+/96932002:04
*** hroy_ is now known as hroy02:36
opendevreviewnidhi proposed openstack/ironic master: Add Redfish LLDP data collection support to the Redfish inspection interface.  https://review.opendev.org/c/openstack/ironic/+/96784106:03
opendevreviewnidhi proposed openstack/ironic master: Add Redfish LLDP data collection support to the Redfish inspection interface.  https://review.opendev.org/c/openstack/ironic/+/96784106:06
opendevreviewnidhi proposed openstack/ironic master: Add Redfish LLDP data collection support to the Redfish inspection interface.  https://review.opendev.org/c/openstack/ironic/+/96784106:08
opendevreviewnidhi proposed openstack/ironic master: Add PCIe function fields to redfish inspection  https://review.opendev.org/c/openstack/ironic/+/96317906:23
rpittaugood morning ironic! happy friday ! o/07:54
*** mdfr1 is now known as mdfr07:58
opendevreviewRiccardo Pittau proposed openstack/bifrost master: Switch all CI jobs to debian based IPA  https://review.opendev.org/c/openstack/bifrost/+/96988610:09
opendevreviewAllain Legacy proposed openstack/ironic master: Add generic switch driver support  https://review.opendev.org/c/openstack/ironic/+/96646913:38
opendevreviewAllain Legacy proposed openstack/ironic master: Add ironic-networking network interface  https://review.opendev.org/c/openstack/ironic/+/96647013:38
opendevreviewAllain Legacy proposed openstack/ironic master: Add standalone networking service installation guide  https://review.opendev.org/c/openstack/ironic/+/96647113:38
opendevreviewAllain Legacy proposed openstack/ironic master: Improve exception handling in switch driver factory  https://review.opendev.org/c/openstack/ironic/+/96985213:38
TheJuliagood morning14:05
cardoeis it Friday already? rewind the clock a little bit and give me some time back.14:30
TheJuliait is14:38
TheJuliacid: I've been looking at https://review.opendev.org/c/openstack/ironic-python-agent/+/958333 and I think ruff stuggled with out config help text formatting, take a look. Don't revise it as-is if we can get away with it (I'm still reviewing it), but I think a follow-up might be fine14:39
cardoeSo one of the patches I was thinking of suggesting was pinning ruff to use the oldest version of Python we'd support in a backport. Otherwise it defaults to what the project uses, which today is 3.10 for all our stuff.14:40
TheJuliacardoe: so, cid did that for targetting 3.7 on his IPA change, so I don't think its an bad idea, just going to make backproting/work processes a bit painful. Easier to do with IPA because the number of outstanding patches there is always a bit less.14:45
cardoeah cool14:48
cid\o/, tks, TheJulia for the review14:49
TheJuliacid: I'm maybe 30% through at this point, but I did spot the weirdness so wanted to highlight it14:50
cid++. Yeah. I think if we consider this fit to merge, a follow-up of almost this size might also be need.14:52
cardoeI'll review it this weekend if it doesn't get closed.14:53
cidIn that patch, I think we can upgrade the python version to 310(?)14:54
cidcardoe, I think it can use as much eyeballs as it can get. Since whatever we decide is the path will apply to other projects in Ironic.14:55
cardoeSo I've been using py38 since 2024.2 supported that.14:55
cardoeI've done something similar to what you've done to sushy.14:56
TheJuliaI think 3.7 is a good starting target at least for now, and we can always increment, that first hurdle is definitely a big one14:56
TheJuliaI've definitely had a few raised eyebrows on the result, but nothing beyond the config help strings in internal worry14:57
cardoeMy team has been using a bunch of +30k/-30k patches to a few openstack repos as a basis for some of our development cause docs aren't the best for some things. But that's outside of ironic as well.14:57
cardoelike our network stuff in neutron, neutron-lib defines some ABCs that are suppose to be the basis for plugin interfaces but then the tests make objects to test with and don't inherit from those ABCs.14:59
cardoeor cinder's interfaces are pretty much my_func(*args, **kwargs) but specific named parameters15:00
TheJuliato be honest, if/when we do something like this to the ironic repo, move strings to double quotes in a separate change.15:27
*** darmach9 is now known as darmach16:04
opendevreviewMerged openstack/ironic master: Drop xinetd/tftpd on CentOS 9  https://review.opendev.org/c/openstack/ironic/+/96444916:30
opendevreviewMerged openstack/ironic master: Switch graphical console image to ubuntu by default  https://review.opendev.org/c/openstack/ironic/+/96420116:38
opendevreviewMerged openstack/ironic master: Add a kubernetes provider for console container  https://review.opendev.org/c/openstack/ironic/+/96224216:38
opendevreviewJay Faulkner proposed openstack/ironic-python-agent master: Add request logging for API requests  https://review.opendev.org/c/openstack/ironic-python-agent/+/95830717:06
opendevreviewAllain Legacy proposed openstack/bifrost master: Add support for standalone ironic networking  https://review.opendev.org/c/openstack/bifrost/+/96239417:07
opendevreviewDoug Goldstein proposed openstack/ironic stable/2025.1: fix: ensure that the bootloader path exists  https://review.opendev.org/c/openstack/ironic/+/96912217:47
opendevreviewDoug Goldstein proposed openstack/ironic stable/2024.2: fix: ensure that the bootloader path exists  https://review.opendev.org/c/openstack/ironic/+/96912317:47
opendevreviewDoug Goldstein proposed openstack/ironic bugfix/31.0: fix: ensure that the bootloader path exists  https://review.opendev.org/c/openstack/ironic/+/96912417:48
*** dking is now known as Guest3298418:25
*** Guest32984 is now known as dking18:26
alegacyis looking at task.node.inspection_finished_at a reliable/acceptable way to know if inspection has completed?18:42
dkingdtantsur: Would you happen to be in for some IrSO questions?19:01
TheJuliaalegacy: the provision_state, ideally19:09
alegacyTheJulia: IIUC, the provision_state would say whether inspection is currently happening, but to know if inspection had happened earlier (while the node is now in a different provision_state) is t.d.inspection_finished_at a reliable method or something else?19:16
alegacyI'm asking in the context of that TODO you commented on in: https://review.opendev.org/c/openstack/ironic/+/96647019:17
opendevreviewMerged openstack/ironic stable/2025.2: fix: ensure that the bootloader path exists  https://review.opendev.org/c/openstack/ironic/+/96912019:18
JayFalegacy: we should *not* assume that inspection has happened or needs to happen though, right?19:37
JayFalegacy: it's about if the info is there or not -- my use cases for this code we likely will try not to enable inspection19:38
JayFInspection is awesome, but leads to Ironic being less consistently behaving when getting machines that aren't following the Redfish standard in the way we expect. 19:38
alegacyJayF: we need local_link_connection info which comes from inspection (unless someone wants to add that manually I suppose, but I don't recommend)19:38
JayFLots of people populate that manually, fwiw19:39
alegacycode currently just puts out a log, but the comment was to upgrade that to an error19:39
alegacysince that code needs to work before and after inspection I thought to try and differentiate those 2 cases19:39
alegacyJayF: so for your purposes you'd rather it just remain as a log.19:40
JayFI'm just saying, generally, please don't accidentally require inspection to use standalone networking :) 19:40
alegacyhere: https://review.opendev.org/c/openstack/ironic/+/966470/comment/dcc8a59d_d9b7fb1e/19:40
JayFis that code reachable outside of a state change?19:41
JayFlike I would expect a failure like that to cause something to go into [something]FAIL19:41
JayFput something into node.last_error, node history, etc19:41
JayFI think raising an exception there might just get that for you for free, but imbw19:41
TheJuliaYeah, operators can totally do supply the local link information, so if it is not set then raising an exception is the appropriate path19:43
TheJuliaguardrailing and doing extra checks if inspection has been done ... not so much in large part because it is optional.19:43
alegacythe problem though is that for those wishing to use inspection, it is possible that the extra.switchport is set before inspection actually occurs therefore raising an exception there would raise an error and inspection wouldn't work.19:44
alegacyif both inspection and manually provisioning of local_link_connection is possible then I think leaving this as a log is probably the best that we can do.19:45
TheJuliaI mean, ideally local_link_information gets reset and move on, not try to raise an error because folks do re-plug things allt he time19:45
alegacyif they are relying on inspection and things get replugged then re-inspection would be necessary19:46
TheJulianot necessarilly19:46
TheJuliabecause operationally, if you know the port you move it to, you just reset the value19:46
alegacythen we'll configure the wrong port!19:46
alegacyok, that assumes they'll manage that manually I guess.19:47
TheJuliasome do19:47
TheJuliaEvery team out there takes the path they are most comfortable with19:47
TheJuliaEven if it is a good, or bad idea :)19:47
alegacyok, I'll sleep on this, but I think a log is the best we can do here.  I don't see how to structure this to raise an error and still have initial inspection work if port.extra.switchport is already set.19:52
JayFIf initial inspection is running; shouldn't provision_state or target_provision_state reflect it?20:10
alegacyi could try looking at the provisioning_state to be more permissive if inspection is happening now... would need to make sure state transitions before the initial inspection would still be ok.20:16
JayFIt seems like we should only run that code when we're trying to swap a network interface, which no state change should be doing pre-inspection in your use case.20:21
JayFat least AIUI20:21
alegacyJayF: TheJulia: thanks, will give that a go.20:23
alegacyah yes, now I remember why I put that in as a log!  ... the default bifrost workflow tries to go straight to available without passing thru inspection and part of that is to do a clean which fails this check.20:42
alegacyi'd have to change the underlying openstack cloud ansible module to allow it to stop at manageable and let the user do the inspection first. 20:43
alegacyor change bifrost to manually populate local_link_connection, i suppose20:43
TheJuliaJayF: yes, provision state should indicate it.20:44
TheJulia+1 to populate port data20:44
TheJuliagranted, thats a bit of a longer walk20:45
TheJuliathe "action of last resort" which many folks do too quickly is force delete and recreate a node in ironic20:45
alegacyyou mean, populate local_link_connection along with port.extra.switchport in bifrost20:45
TheJuliaand often when one does that, they have everything they can populate back as well20:45
alegacyin the enroll step20:46
TheJuliayes20:46
TheJuliayup20:46
alegacyk, in _theory_ that shouldn't be too difficult... but not a Friday afternoon gig. ;) 20:47
TheJuliaoh, yeah, definitely20:52
TheJuliahave a great weekend, I likely won't be around next week20:52
TheJuliabut if anyone needs me, ping me20:52
alegacyTheJulia: thanks, enjoy your time off21:06
cardoeEnjoy the time off21:16
cardoeJayF: alegacy: I do think we can enhance the state machine diagram page a little bit with some user story type stuff.21:19
cardoeBut I feel like that about a lot of the Ironic docs. They're very factual. "Here is an API you can call. Here is another one."21:20
cardoeIt would be more of a paint a picture.21:20
opendevreviewJulia Kreger proposed openstack/ironic master: OCI Basic Auth/Tag access  https://review.opendev.org/c/openstack/ironic/+/96931421:35

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