Monday, 2025-03-03

opendevreviewAdam McArthur proposed openstack/ironic-tempest-plugin master: WIP: Testing all microversion tests on CI  https://review.opendev.org/c/openstack/ironic-tempest-plugin/+/94308603:59
opendevreviewAdam McArthur proposed openstack/ironic-tempest-plugin master: WIP: Testing all microversion tests on CI  https://review.opendev.org/c/openstack/ironic-tempest-plugin/+/94308604:55
opendevreviewAdam McArthur proposed openstack/ironic-tempest-plugin master: WIP: Testing all microversion tests on CI  https://review.opendev.org/c/openstack/ironic-tempest-plugin/+/94308606:14
rpittaugood morning ironic! o/07:40
opendevreviewVerification of a change to openstack/ironic-python-agent master failed: Fix the way qemu-img is called with prlimits  https://review.opendev.org/c/openstack/ironic-python-agent/+/94269008:14
mdfrgood morning!08:32
opendevreviewVerification of a change to openstack/ironic-python-agent master failed: Fix the way qemu-img is called with prlimits  https://review.opendev.org/c/openstack/ironic-python-agent/+/94269008:33
opendevreviewMerged openstack/sushy-tools master: nova driver - get_secure_boot volume boot  https://review.opendev.org/c/openstack/sushy-tools/+/94245609:52
opendevreviewMerged openstack/sushy-tools master: OS vmedia: Update device on eject_image  https://review.opendev.org/c/openstack/sushy-tools/+/94249809:52
opendevreviewMerged openstack/sushy-tools master: Openstack vmedia - refactor to pre-defined volumes  https://review.opendev.org/c/openstack/sushy-tools/+/94249909:52
opendevreviewcid proposed openstack/ironic master: Include all relevant error messages in exception  https://review.opendev.org/c/openstack/ironic/+/94266410:15
opendevreviewVerification of a change to openstack/ironic-python-agent master failed: Fix the way qemu-img is called with prlimits  https://review.opendev.org/c/openstack/ironic-python-agent/+/94269011:46
opendevreviewVerification of a change to openstack/ironic-python-agent-builder master failed: More reliable TinyIPA builds with network retries  https://review.opendev.org/c/openstack/ironic-python-agent-builder/+/94236912:15
rpittauTheJulia, JayF, iurygregory, can one of you please run the meeting today? I won't have electricity/internet for a couple of hours during the afternoon :/12:21
iurygregorytoday I can't =(, going to grab lunch with some friends in a restaurant so I will be out during the time of the meeting =( 12:23
iurygregoryironic-standalone-ipa-src I hate you!12:40
iurygregoryhttps://zuul.opendev.org/t/openstack/build/33389089c6a942fa94f57d4529123e9f 12:40
iurygregory2025-03-03 10:55:35,134 109315 DEBUG    [tempest.scenario.manager] BaremetalIPXEBootTestClass:test_ip_access_to_server begins to ping 172.24.5.223 in 120 sec and the expected result is reachable12:40
iurygregory2025-03-03 10:57:35,376 109315 DEBUG    [tempest.lib.common.utils.test_utils] Call ping returns false in 120.000000 seconds12:40
iurygregory2025-03-03 10:57:35,377 109315 DEBUG    [tempest.scenario.manager] BaremetalIPXEBootTestClass:test_ip_access_to_server finishes ping 172.24.5.223 in 120 sec and the ping result is unexpected12:40
iurygregory(╯°□°)╯︵ ┻━┻12:41
opendevreviewVasyl Saienko proposed openstack/ironic-tempest-plugin master: Add retriable wait to boot_and_verify_node  https://review.opendev.org/c/openstack/ironic-tempest-plugin/+/94317412:50
zigoGuys, ironic_python_agent/metrics_lib/ is missing an __init__.py !13:09
opendevreviewThomas Goirand proposed openstack/ironic-python-agent master: Missing __init__.py file  https://review.opendev.org/c/openstack/ironic-python-agent/+/94317813:11
rpittauthanks zigo !13:22
iurygregory+213:22
zigoWhaaa... 11 minutes to get my patch accepted. That's my record ! :)13:26
rpittau:)13:30
opendevreviewcid proposed openstack/ironic master: Follow-up: Apply Inspection Rules  https://review.opendev.org/c/openstack/ironic/+/94211213:46
opendevreviewcid proposed openstack/ironic master: API/Testing: Inspection rules migration  https://review.opendev.org/c/openstack/ironic/+/93921713:46
TheJuliarpittau: I can run it13:52
TheJuliaAlso, goo dmorning13:52
opendevreviewcid proposed openstack/python-ironicclient master: Add CLI support for migrated inspection rules  https://review.opendev.org/c/openstack/python-ironicclient/+/93762813:53
TheJuliaiurygregory: yeah, I've seen enough networking failures of deployed nodes that I'm about ready just to turn off tempest testing entirely13:53
opendevreviewJakub Darmach proposed openstack/bifrost stable/2024.1: pip: Use SETUPTOOLS_USE_STDLIB if python < 3.12  https://review.opendev.org/c/openstack/bifrost/+/94318014:02
darmachHello, I'm working on backporting Noble support to Caracal. One of the failing container builds is Bifrost - failing to use setuptools on Python 3.12. I found two changes solving this in bifrost - master: https://review.opendev.org/c/openstack/bifrost/+/92482814:40
darmachhttps://review.opendev.org/c/openstack/bifrost/+/92976914:40
darmachBack ported the first, second one fails to backport as backport was already started and abandoned: 14:40
darmachhttps://review.opendev.org/c/openstack/bifrost/+/930024 14:40
darmachWould someone be so kind and un-abandon that one? :)14:40
*** priteau is now known as Guest1054914:46
*** priteau2 is now known as priteau14:46
zigoIs the ironic-inspector daemon gone, and merged with the normal API one, for Epoxy ?14:55
zigoI know it was the plan, and I can't see it released ...14:56
JayFzigo: it's in deprecation period, with an automatic migration for almost all use cases14:59
JayFzigo: so technically there will be ironic-inspector in epoxy; but I wouldn't be suggesting folks deploy it unless they have a wacky edge case15:00
zigoJayF: So, ipa is now using the Ironic endpoint by default now?15:00
fricklerdarmach: done15:00
TheJulia#startmeeting ironic15:00
opendevmeetMeeting started Mon Mar  3 15:00:28 2025 UTC and is due to finish in 60 minutes.  The chair is TheJulia. Information about MeetBot at http://wiki.debian.org/MeetBot.15:00
opendevmeetUseful Commands: #action #agreed #help #info #idea #link #topic #startvote.15:00
opendevmeetThe meeting name has been set to 'ironic'15:00
TheJuliao/15:00
JayFo/15:00
frickler\o15:00
TheJuliaGood morning folks, lets see if we have a quorum of contributors this morning.15:01
* TheJulia makes more cocfeeeeee15:01
TheJuliacoffeeeee15:01
* TheJulia clearly needs more coffeeeeeeeee15:02
kubajjo/15:03
TheJuliaI'm sensing we might not have a quorum for today15:03
JayFThat's really sad, I had a couple of RFEs I wanted to advance15:03
JayFCan we discuss them anyway? One of them is for satoshi's MLH project and we'd love to get feedback if not full approval15:04
TheJuliaRFE's are not required to be triaged in a meeting :)15:04
JayFI thought we approved/needs-specs them in a meeting with quorum, generally15:04
TheJulianope15:04
JayFnot that it matters that much, but the feedback is an important part anyway15:04
TheJulia++15:04
TheJuliaLets do abriviated reminders, then jump to the RFEs15:05
TheJuliasound good?15:05
JayF++15:05
TheJulia#info Reminder, please review items on the weekly review dashboard.15:05
TheJulia#link v15:05
TheJulia#undo15:05
opendevmeetRemoving item from minutes: #link v15:05
TheJulia#link https://tinyurl.com/ironic-weekly-prio-dash15:05
TheJulia#info Epoxy release schedule has been posted.15:06
TheJulia#link https://releases.openstack.org/epoxy/schedule.html15:06
TheJulia#info Flamingo PTG will take place place April 7-11, 202515:06
TheJulia#link https://etherpad.opendev.org/p/ironic-ptg-april-202515:06
TheJulia#info We're officially a DPL project!15:06
TheJuliaJayF: do you know why the ironic-lib topic is a discussion topic?15:07
JayFmainly for \o/ purposes15:07
JayFit's gone15:07
TheJuliaCool cool15:07
JayFI think there are a couple of perfuntory patches still remaining15:07
TheJulia#topic RFEs15:07
JayFbut nothing ironic side15:07
TheJuliaFirst one: https://bugs.launchpad.net/ironic/+bug/210055615:07
JayFSo this proposes a feature for IPA of a ContainerHardwareManager, the idea is to run cleaning steps via container. There's a generic method useful with API-driven flows (needs args), and a proposed configuration mechanism to add steps for automated cleaning usage15:09
JayFThe next RFE on the list is sorta a cousin to this, if approved15:09
cido/15:09
opendevreviewKaifeng Wang proposed openstack/python-ironicclient master: Add sort support for node history  https://review.opendev.org/c/openstack/python-ironicclient/+/94318315:09
TheJuliaAnd the list of available steps appears to be entirely dirven by conductor side configuration?15:09
JayFwell, we have a big generic step that you can provide args and run arbitrary stuff if you can give args15:10
JayFbut the available *automated* steps are config driven15:10
JayFso you could interface: deploy, step: run_container (made up name/args), args: url: oci://registry/container:tag15:10
TheJuliaI guess that makes sense15:10
JayFthe next RFE is spicier and sorta came outta an ask from my downstream15:11
TheJuliaas long as the available parameters are restricted on the input.15:11
JayFthe end goal is to be able to change steps in automated cleaning without changing configuration and/or deploying new ramisk (rfe #2 gets us there)15:11
TheJuliaand really for the step, it seems like it is just a pass-through to a container15:11
JayFTheJulia: I told satoshi that I would suggest we might want to lock the "run any container whatsoever" method behind config15:11
TheJuliayeah, reasonable15:12
TheJuliaI think that is reasonable15:12
JayFthat, and us not using the infra you just made for images15:12
JayFare the only two things I could anticipate being concerns here15:12
JayFotherwise it's super straightforward15:12
TheJuliago ahead15:12
JayFdoes that means 2100556 is approved? Unsure what you mean by go ahead15:13
TheJuliaI don't think it needs a spec, but it is right on that line where it makes sense but seems like a ton to bite off.15:14
TheJuliaso I would feel fine taking an rfe-approved approach for it15:14
JayFFWIW, we already have a PoC in agent of everything but the config :)15:15
JayFwell, "we" == satoshi 15:15
JayFso problems running containers in ramdisks (which do exist!) have been worked thru15:15
JayFokay so the next RFE is under my name15:15
JayFhttps://bugs.launchpad.net/ironic/+bug/210054515:15
JayFDeclarative automated cleaning via runbooks15:15
JayFbasically I want to add config, in the normal places (conductor .conf + overridable by node), to allow you to specify a runbook to run in lieu of imperative automated cleaning15:16
TheJulia... I guess I would need a better understanding of how we're going to guard an owner from being able to override system defaults as asserted by the overall system-admin15:16
JayFah, so maybe a flag to completely disable this feature if the system admin doesn't trust users?15:17
TheJuliaI think: overall, a decent idea, however I'm a little concerned about the security implication of being able to override the overall system15:17
TheJuliaI think that is reasonable15:17
JayFthe other piece that came in as a requirement, and I marked there15:18
JayFbut I'm kinda :-| about15:18
JayFis making them configurable by resource class15:18
TheJuliaThat actually makes a ton of sense to me if you have specific classes15:18
JayFI *think* that's the right place to split them up, and it's what my downstream wants, but it'd be the first config we have afaik that is "by resource class"15:18
TheJuliaI'm not a fan of dict config fields though15:19
JayF(we do have "by cpu arch" settings by the bushel)15:19
TheJuliawould it make sense to be a yaml file which is consulted by the conductor?15:19
JayFI mean, we have the library we have, and I'd rather not re-invent the wheel? In the IPA/ContainerHWM case we actually proposed a separate yaml as it gets complex15:19
JayFbut that's because we need a list(dict())15:19
JayFin this case, in the second rfe, we only need dict()15:20
JayFwhich is 100% supported in oslo config and used in a lot of places in ironic15:20
TheJuliafair enough, I guess one of the things I'm wondering is how often any of that config would change15:20
JayFlemme put it this way: I'd rather see an oslo.config feature OR full Ironic overhaul allowing *any* of our dict fields to be yaml15:20
TheJuliaanyhow, add a security knob and I'll be happy as an RFE15:20
JayFadded a note to comments there about wanting a security knob15:20
TheJuliaat some point, for complex config which may change, we should just avoid forcing the service to be HUPed upon changes15:21
* JayF proposes node.admin_info /s15:21
JayFTheJulia: this could be a mutable config?15:21
JayFmutable configs don't need a hup, right?15:21
TheJuliamutable configs only take effect once the service is hupped15:21
* TheJulia knows this far too well from changing automated_clean to true locally15:22
JayFAre you sure that it's not a lazy-activation thing?15:22
JayFthat it would've taken effect over time e15:22
TheJulia100% sure15:22
TheJuliawell, 99.95% sure, 0.05% someone might have slipped something in :)15:23
TheJuliaanyhow, one of the reason I did the container registry authenticaiton keys as an open file when needed approach was because that file can be regenerated15:23
TheJuliawhile the service is running, and needing to have whatever manages ironic know to hup it upon changes is a burden. Its more a question of frequency of change and if that is not a concern then cool cool15:24
JayFI think there might be some meat on this bone for making config better, but I'd prefer we take a "fix it all" approach (at least in ironic if not all of the stack) than introduce inconsistency15:24
JayFbut adding an optional yaml version of most of our dict configs might be really, really syntactically nice15:24
cardoesorry I'm late.15:25
TheJuliaI think your taking my concern for flux a bit further than I was worried about15:25
JayFI think it's more that I think your idea is so cool I wanna take it further :D 15:25
JayFI *hate* our dict config syntax 15:25
cardoeSo I threw something on the PTG that I think is related to this ContainerHardwareManager piece.15:25
TheJuliaanyhow, just not a fan of dict config values because decoding them is not always the easiest15:26
TheJuliayes, I'm with you there entirely15:26
cardoeBasically what if we did away with IPA or the deploy drivers having a list of steps in there and instead always created "deploy templates" and used those.15:26
JayFcardoe: do you have a link to the ptg pad at hand?15:26
cardoehttps://etherpad.opendev.org/p/ironic-ptg-april-202515:26
TheJuliaIt might be fair to do, I'm not sure we've ever *really* seen steps change in practice based upon hardware managers15:27
TheJuliabut downstream operators might be doing that today and such a change is an operational risk15:27
JayFcardoe is one of those downstream operators15:27
TheJuliawhich means, definitely ptg topic15:27
JayFwhether he knows it or not lol15:27
TheJuliaJayF: indeed.15:27
JayFI am struggling to grasp at the value of plugging in all deploy steps as templates15:28
JayFbut that's what ptg is for :)15:28
TheJuliayup15:29
TheJuliaSo, anything else to discuss this week?15:29
cardoeI had a question about the anaconda docs patch.15:29
cardoeI threw 2 TODOs they I wanna rip out... https://review.opendev.org/c/openstack/ironic/+/94283915:29
cardoeIf we should make those changes then I'll create bugs for enhancements. If not, I'll delete them.15:30
cardoedtantsur: Really hoping you can provide feedback on https://review.opendev.org/c/openstack/ironic/+/940333 as well.15:31
JayFI'd suggest you check with the only other vocal user of that driver: kubajj and the friends at cern15:31
JayFI don't have strong opinions around it other than "please don't break existing users or give them an annoying migration" :D15:31
TheJuliafor the second one, is it just lacking a default value today?15:31
cardoeWhat do we need to do to unblock our CI? It seems like nothing is passing. It's all different jobs that fail.15:31
TheJuliaIt seems networking is just toast15:31
TheJuliaand it seems entirely random :(15:32
cardoeTheJulia: So if I don't want to ever use the generic ks_template provided by Ironic and require the user to supply a ks_template, that's not allowed. 15:32
JayFIs there anything we could nail down, like per provider or something?15:32
JayFif it's an infra issue, we can maybe point them at it :/ 15:32
JayFotherwise I've been thinking drastic things ... like -nv almost all integration jobs and communicate to cores to enforce that all jobs passed once15:33
frickleriiuc it is mostly high load on the whole system15:33
TheJuliacardoe: so ironic should have a reasonable default, I'm reading what your saying as the value must be supplied regardless15:33
JayFI mean, if high load on the whole system renders our CI useless, the system is broken for purposes of our CI15:33
JayFIDK if that means CI is broken, the system is broken, or "yes"15:33
TheJuliaUnfortunately, our jobs are io intensive and we've seen this cycle after cycle where when the system is getting crushed our failure rate goes through the roof15:33
kubajjcardoe: TODO 1 - we did set it up to load the kickstarts from glance15:34
TheJuliacardoe: replied to your first question on the docs review15:34
cardoeTheJulia: I'm cool with Ironic having a reasonable default out of the box. But as an operator I cannot set "default_ks_template" to "".15:34
cardoekubajj: yeah you can load it from glance if you set ks_template=glance:// on each image you upload.15:34
TheJuliacardoe: and are you saying you need to?15:35
cardoeTheJulia: So I want to require all image to specify their own ks_template. The code will check for that because it uses default_ks_template if a specific ks_template isn't set. errr lemme fake code something15:36
TheJuliaI guess, the call in validation would always expect it be used, but if there is a *documented* path to avoid it's use which works, I could be okay with "if set to an empty value, treat it as None and skip the validation on it15:36
cardoeks_template = image_info.get("ks_template", CONF.anaconda.default_ks_template)15:36
TheJuliaokay, sounds good15:36
cardoeif not this_exists(ks_template): print("user you did it wrong")15:36
cardoeThat's how the code works today.15:37
TheJuliaokay15:37
cardoeBUT Ironic fails to start up if CONF.anaconda.default_ks_template isn't a real file.15:37
cardoeBecause of a check in another spot15:37
TheJuliaAhh15:38
TheJuliaokay15:38
cardoekubajj: would love feedback on https://review.opendev.org/c/openstack/ironic/+/94283915:38
kubajjcardoe: will do15:38
TheJuliacardoe: so likely okay to separately change that logic since we should ideally not abort startup unless it is a horribly bad issue15:38
TheJuliaThat itself might actually be a bug at this point15:39
cardoeSo basically if those use cases are valid, I'll make bugs to improve this.15:39
JayFsgtm15:39
JayFimage handling more consistent is good, not crashing on startup is good15:39
cardoeokay thanks. Just wanna start landing some of my docs patches rather than leaving them in this terrible WIP state.15:40
TheJuliaI recently... (like within the last year) did a similar check removal since it no longer made sense15:40
TheJuliacool coo15:40
TheJuliacool cool15:40
TheJuliaanything else to discuss other than CI performance sadness and IP networking failing across the FIP15:41
JayFI probably won't have time to look at CI today/tomorrow, but if we find a quiet hour at OIF days might be interesting to IRL pair on it15:41
TheJuliaYeah, I've looked enough times I stopped digging at failed connectity failures since they also seem to be highly intermittent15:42
JayFadamcarthur5 keeps looking for interesting ways to intersect AI tooling and OpenStack15:43
JayFI had an epiphany this weekend to maybe point him at CI logs15:43
darmachfrickler Thank you!15:44
TheJuliaJayF: that... might not be a bad idea15:45
JayFyep. no need to mechanical turk it as humans 15:45
TheJuliaAnyway, closing meeting in 1 minute if nobody else has anything to discuss15:45
JayFcombined with AI that doesn't exhaust and can maybe find patterns we can't15:45
JayFat this point "bad" AI ideas are maybe better than no ideas at all15:46
TheJulia#endmeeting15:49
opendevmeetMeeting ended Mon Mar  3 15:49:00 2025 UTC.  Information about MeetBot at http://wiki.debian.org/MeetBot . (v 0.1.4)15:49
opendevmeetMinutes:        https://meetings.opendev.org/meetings/ironic/2025/ironic.2025-03-03-15.00.html15:49
opendevmeetMinutes (text): https://meetings.opendev.org/meetings/ironic/2025/ironic.2025-03-03-15.00.txt15:49
opendevmeetLog:            https://meetings.opendev.org/meetings/ironic/2025/ironic.2025-03-03-15.00.log.html15:49
TheJuliaThanks folks!15:49
opendevreviewDoug Goldstein proposed openstack/ironic master: doc: updates to anaconda deploy interface  https://review.opendev.org/c/openstack/ironic/+/94283915:49
JayFty15:49

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