Tuesday, 2025-01-28

opendevreviewDoug Goldstein proposed openstack/ironic master: doc: define the shape of inspection inventory  https://review.opendev.org/c/openstack/ironic/+/94027701:35
cardoeso thinking of something like ^ but then also maybe jsonschema... we don't have anything to generate tables from schema do we?01:36
opendevreviewVasyl Saienko proposed openstack/networking-generic-switch master: Remove unneeded hasattr check for bond methods  https://review.opendev.org/c/openstack/networking-generic-switch/+/94029611:05
jssfrJan 28 11:24:07 ubuntu ironic-python-agent[1923]: 2025-01-28 11:24:07.111 1923 ERROR root ironic_python_agent.errors.InvalidImage: The provided image is not valid for use: Security: Detected image format was gpt, but only raw, qcow2, iso are allowed11:39
jssfrso this is a raw image with a gpt partition table... is that check a bit overzealous?11:39
jssfrlooks like https://docs.openstack.org/ironic/2024.1/configuration/config.html#conductor.permitted_image_formats is the way to configure this11:42
jssfrconverting the raw image to qcow2 helps :D13:00
TheJuliajssfr: is that appearing in 2024.1?14:20
jssfrno, that's actually zed, I found out.14:31
jssfrI thought we were on 2024.1, but it's zed.14:31
jssfrso may not be relevant really.14:31
jssfr(I only found that out later tho)14:32
TheJuliaThe check was backported, but I didn't think it had the distingishment between gpt and raw14:32
TheJuliaI thought that came in the later versions upstream14:32
jssfrI wouldn't put it past our image build process to accidentally pull in some newer dependency somewhere...14:33
TheJuliawell, it was included code, not a library in that version14:33
TheJuliaso it just seems confusing, but at the same time it was all a blur14:33
jssfrhmmm14:34
JayFthis looks like you pullewd in newer ipa/oslo utils to an older ironic?15:05
JayFfull backtrace there would be useful, along with a `pip freeze` in the IPA install in the venv of the ramdisk15:05
jssfrJayF, I'll see if I can get that tomorrow (I'm off my work systems already).15:14
jssfrpip freeze should be easy, not so sure about the full backtrace. That might be gone already.15:14
jssfrOH15:14
jssfrthis is about the **ipa** version15:14
jssfrin that case  we might actually be on 2024.1 not on zed, I'll have to confirm that. I was only looking at conductor/api/etc. versions. The IPA image is a separate process which may source different code. (cc TheJulia )15:15
TheJuliaWell, the check exists internally in ironic *and* the ramdisk15:29
TheJuliaso sort of depends on where it gets disqualified at15:29
opendevreviewcid proposed openstack/ironic master: Apply Rules: inspection rules migration  https://review.opendev.org/c/openstack/ironic/+/93921815:48
opendevreviewcid proposed openstack/ironic master: API/Testing: Inspection rules migration  https://review.opendev.org/c/openstack/ironic/+/93921715:48
jssfrTheJulia, ramdisk16:37
jssfr(the log line is from there)16:37
TheJuliaahh,  yeah16:46
opendevreviewJulia Kreger proposed openstack/ironic-python-agent master: Bootable container support  https://review.opendev.org/c/openstack/ironic-python-agent/+/94017816:55
cardoeJayF: you were looking for pre-commit on IPA right?17:00
*** priteau is now known as Guest726717:04
*** priteau2 is now known as priteau17:04
cardoeOr was it another repo? Cause I did IPA.17:08
TheJuliaI'm guessing Jay is still feeling under the weather17:17
TheJuliaAnd likely the only way to illicit a response is for a hockey game to appear outside his home ;)17:18
JayFI'm here just busy17:19
JayFyesterday was less illness and more allergies+insomnia working together to knock me outta commission17:19
JayFMy meetings for the day are complete :)17:19
JayFcardoe: I think it was ironic-specs?17:23
JayFcardoe: IDR at this point, my context of that conversation is long gone :)17:23
cardoeOkay. I’ve got patches for both in gerrit.17:24
cardoeSounds like you’ve had a rough go of it.17:24
JayFack; I'll do a review pass once I'm to the bottom of the list17:24
JayFeh; I had COVID over the winter break; I recovered from most of it but have been lethargic/having leftover sinus issues17:24
JayFso lack of sleep + allergy flare up basically just kicked my butt yesterday but I'm feeling really good today (thanks; sudafed)17:25
cardoeI’m trying to clean up the node cleaning docs and the inspection ones. I’m honestly more confused than I was when I started about behavior.17:25
JayFgive me like, 30-60 minutes to get to the bottom of my todo list17:26
JayFmaybe a little more17:26
JayFand I'm happy to sync up with you on it and find answers17:26
TheJuliaugh, sinus issues from covid seem to last a tremendously long time17:26
cardoeNo worries. I’m around on mobile. I’ll sit in front of my laptop in a bit.17:27
JayFyeah; I just decided I'll do what my doc has told me to do in the past and just sudafed for two weeks and try to reset things17:27
cardoeI’m in Puerto Rico today but it’s a work day for my wife. And my “job” is to follow her with camera gear and scene lists and make sure we get them. But I can have her stop and edit anytime.17:28
cardoeI’m on PTO from my real job to be an assistant to my wife.17:29
JayFyour wife some kinda influencer?17:30
cardoeKinda? She doesn’t actually post the stuff. She creates content that others get from her.17:32
cardoeAnd it’s not influencers. But like brands and travel agencies.17:33
TheJuliaThat sounds awesome17:37
cardoeIt started years ago when she was a real estate agent. She’s good at digital video. So she made walk throughs before the 360 camera was a thing. Then added drone footage before it was a thing. Ended up getting others interested in having her do it. So that was more consistent work. So she did that for a while. Then she made some montage of a vacation.17:37
TheJuliaas an FYI, I posted https://review.opendev.org/c/openstack/ironic-tempest-plugin/+/940247 to try and reduce some of our test failures in CI17:37
cardoeAnd our travel agent said they’d give us a free or reduced trip if she made them a bunch of ads. So we did that. And now she’s a part time travel agent and the brand themselves send her on trips to generate content for them to post.17:39
cardoeSo we go a few weeks a year and record a metric ton of footage. It’s like stock photos on steroids.17:39
JayFthat is really freakin' cool seeming17:41
JayFthat being said: you should be enjoying Puerto Rico without the glow of a laptop :) nothing we need here can't wait until you're back workin'17:42
cardoeIt’s funny cause I don’t have any social media apps.17:42
JayFthe older I get, the more I think IRC counts17:45
cardoeI’m literally downloading files from her cameras and tagging them for her. So I’ve already got a laptop.17:45
JayFmaybe that's more reflective of how many of my friends/hobbies are IRC-centric though :)17:45
TheJuliaI'm pretty much done with social media at this point, except the blue skys17:46
JayFmy X account was closed last week, even though for a while it was just podcast shilling. I'm trying to look at everything like that less and less, and heavily filter any ... non-personal information17:47
JayFlike I wanna hear how Julia is doing; I don't need 45 people boosting news into my thread17:47
TheJuliaI've been a lot better17:47
TheJuliabut i'll be okay... for now17:47
cardoeExactly. I think we’ve now seen that social media has been a net negative on society.17:47
cardoeThough I shouldn’t bash it cause it’s given me some cool trips since COVID.17:48
JayFI'm hoping I'm retirement age before I am convinced s/social media/internet/17:48
JayFotherwise my job gets a lot harder ;)17:48
TheJuliaheh17:48
TheJuliaSo! I'm curious. Any thoughts/feelings on doing some auto-middle of error truncation with error messages?17:49
JayFIn the beginning, the internet was created. This has made a lot of people very angry and has been widely regarded as a bad move.17:49
JayFI have no idea what you mean by that 17:49
TheJuliaspecifically, when doing my bootc testing last week, I had podman throw a stupidly long error17:49
TheJuliasuch that the tail end got truncated because it exceeded the field length17:49
cardoeThe closest we’ve come to being in any of our videos is some Royal Caribbean video where I slide off the end of a slide wearing a GoPro and my legs come into view for a second.17:49
JayFTheJulia: how big is the field? is the answer not "make it big enough to hold a giant freakin' error"?17:50
TheJuliaJayF: That is a stupidly good question17:50
TheJuliaI think it is 1k17:50
* TheJulia looks i tup17:50
cardoeWe throw some serious back traces. That’s surprising.17:50
TheJuliaL + 2 bytes, where L < 21617:51
TheJuliaso we might be truncating elsewhere17:51
TheJuliaI'll have to dig17:51
TheJuliaI just found the trail end truncation semi-annoying17:52
TheJuliaIt *helped* I had the logs on a terminal window and I could see why my deploy of a container failed17:52
TheJuliabut yeah17:52
JayFI don't have a good sense of if that's already extremely long17:53
JayFmy preference is always to not truncate and instead show it all17:53
* JayF points at node faults and regrets not implementing it again17:53
TheJuliasort of why I put history in17:54
TheJuliaI'll dig through the code and see what might be truncating it17:55
JayFI had a fleeting thought that I buried deep inside17:55
JayFof node.last_error being a pointer to a node history entry17:55
JayFso we could make the field larger without ballooning nodes17:55
TheJuliaits not a bad idea, except I think the error is likely pre-truncated17:55
JayFbut I'm sure that's a bad idea for other reasons I don't have the words for17:55
TheJuliaat least, that is my gut feeling17:55
TheJuliawell17:57
TheJuliaSo the fun thing with text and longtext is they are not actually in the table17:57
TheJuliathe db keeps a pointer *and* like the first so many bytes17:57
TheJuliafor index queries, if you query in such a way to table scan, then it goes and resolves all the pointers17:57
TheJuliaand is overall just "mean" to the DB17:58
* TheJulia is stupidly familiar with DB internals thanks to spending *many* years supporting https://en.wikipedia.org/wiki/Basis_database17:58
cardoeSo I started on this... https://review.opendev.org/c/openstack/ironic/+/940277 Not sure how folks wanna see that appear. But I think we need to define the shape of that structure. So that plugins and rules can be more easily written without telling people to read the code.18:35
cardoeAs far as node cleaning goes. I really don't know the best way to handle hardware RAID. I'm guessing it should be part of the flavor (using nova term here since I'm using nova) so I'd just set it once. But I've noticed that target_raid_config stays set but raid_config loses its value often.18:37
TheJuliaI think it makes sense to document18:37
TheJuliacardoe: w/r/t raid, hmmm18:37
TheJuliacardoe: raid feels like a discussion. I guess there are some distinct differnet issues there, such as config issues your indicating *and* the best model18:38
TheJuliawhich is not exactly clear by default18:38
cardoeThere's many options per the docs but I feel like there's likely some common use cases I could document.18:38
TheJuliaI feel like we need to find the old StackHPC demo18:38
cardoeYeah I'd be happy watching some YouTube's and documenting what folks came up with.18:39
TheJuliaI'm 95% sure they posted a demo video to youtube18:39
TheJuliachallenge is finding it18:39
TheJuliaso regarding last_error, looks like node history is doing the right thing18:40
cardoeThat's my issue with video as a communication medium. 30 minutes of content for 5 seconds of what I want.18:40
TheJuliaso my idea to fix truncation was more... I should look at that node history feature I wrote years ago18:40
TheJuliayeah18:40
TheJuliaagreed18:40
TheJuliahttps://www.youtube.com/watch?v=DrQcTljx_eM18:42
TheJuliafound it18:42
cardoeJayF: https://review.opendev.org/c/openstack/ironic-specs/+/940198 and it's follow on I think is what we had wanted for ironic-specs then we'll catch other issues before more specs land.18:43
JayFcardoe: reviewing, ty. Honestly I want it for two things: codespell and telling me `blah` is wrong and ``blah`` is right lol18:47
TheJuliaI just approved it18:53
TheJulia... its all formatting changes18:54
TheJuliawhich are fine and make it more consistent18:54
JayFI reviewed it, then closed it without +2'ing it18:54
JayFd'oh18:54
JayFI went back and put my +2 on it retroactively18:55
* JayF finally reaches the end of his "things to do real quick this morning" list right before lunch :| 18:56
opendevreviewMerged openstack/ironic-specs master: clean up an assortment of sphinx-lint issues  https://review.opendev.org/c/openstack/ironic-specs/+/94019819:00
cardoeSo it seems like codespell should be enabled but it must not be because I found a typo in TheJulia's OCI spec. So I'll have to play with that.19:03
cardoeJayF: https://review.opendev.org/c/openstack/ironic-specs/+/940199 will need +W to enable pre-commit enforcing it.19:03
cardoehmm maybe we're not running pre-commit in gerrit.19:04
cardoecrap that's it.19:05
cardoeWe added pre-commit previously but didn't enable it.19:05
opendevreviewDoug Goldstein proposed openstack/ironic-specs master: enable sphinx-lint on priorities and specs  https://review.opendev.org/c/openstack/ironic-specs/+/94019919:11
opendevreviewJulia Kreger proposed openstack/ironic-specs master: OCI Container Registry Image Source  https://review.opendev.org/c/openstack/ironic-specs/+/93361219:13
cardoeIt really makes me sad we don't have a library that can auto-generate jsonschema for us.19:18
JayFI mean, it's a chicken/egg thing, right?19:19
JayFit makes more sense to me that we write the jsonschema and generate stuff off that 19:19
JayF(which is what the stephen fin / adam mcarthur project is doing)19:19
cardoeSo I see in IPA we've manually made Serializable for example but the built in Python would be dataclasses. So I was gonna ask if we could use that in Ironic.19:20
cardoeBut then there's many ways to generate jsonschema from dataclasses.19:20
cardoeI dunno. I find it more natural to write my class interface than jsonschema.19:20
JayFI am not 100% sure dataclasses are expressive enough19:21
JayFespecially for things like port.local_link_connection which has multiple valid possible schemas19:21
cardoeI'll concede that point. pydantic is my personal preference.19:26
cardoeBut as far as multiple schemas. That works with dataclasses already with the Union type.19:26
opendevreviewJulia Kreger proposed openstack/ironic-specs master: Support for bootable containers  https://review.opendev.org/c/openstack/ironic-specs/+/93362019:33
TheJuliacardoe: w/r/t https://review.opendev.org/c/openstack/ironic-specs/+/933612 I've made the changes you highlighted19:35
cardoeWell I'm not sure if I properly enabled pre-commit to run on ironic-specs.19:36
cardoehttps://zuul.opendev.org/t/openstack/build/c011742769074edd88375dd3a580456d had no logs19:37
TheJuliahttps://zuul.opendev.org/t/openstack/build/c011742769074edd88375dd3a580456d/log/job-output.txt ?19:39
cardoeWeird. It says this job provides no output to me.19:40
* TheJulia shrugs19:42
JayFcardoe: wfm for sure https://storage.bhs.cloud.ovh.net/v1/AUTH_dcaab5e32b234d56b626f72581e3644c/zuul_opendev_logs_c01/940199/2/check/openstack-tox-linters/c011742/tox/linters/1-commands%5B0%5D.log is a direct link showing pre-commit works19:49
cardoeI'll just chalk it up to my funky internet.19:53
cardoeWell feel free to land that and hopefully it helps Julia getting her OCI landed.19:55
JayFI +2'd it19:55
opendevreviewJulia Kreger proposed openstack/ironic-python-agent master: Bootable container support  https://review.opendev.org/c/openstack/ironic-python-agent/+/94017819:55
JayFwill give at least a grace period for someone else to look since it changes ci19:55
cardoemakes sense to me19:57
TheJuliaJayF: do you know if the change to the builder was done which was being noted in https://review.opendev.org/c/openstack/ironic-python-agent/+/925415/15/ironic_python_agent/burnin.py20:06
JayFno, I told scott I'd look into it when that merged20:07
JayFif you wanna require it ahead of time, just -1 with that comment and I'll add it to my list20:08
TheJuliaI'm fine with approving that as long as it doesn't get forgotten20:10
TheJuliathat is my big worry20:10
JayFme? forget a follow up? <.<20:29
opendevreviewDoug Goldstein proposed openstack/ironic master: move inspection hooks initialization  https://review.opendev.org/c/openstack/ironic/+/94033120:36
opendevreviewDoug Goldstein proposed openstack/ironic master: move hooks execution into shareable module  https://review.opendev.org/c/openstack/ironic/+/94033220:36
opendevreviewDoug Goldstein proposed openstack/ironic master: allow multiple inspection interfaces to load hooks  https://review.opendev.org/c/openstack/ironic/+/94033320:36
JayFcardoe: is that going to conflict with the big inspection rules migration changes cid has in progress?20:37
cardoeI hope not. I'll look at what he's got.20:38
cardoeI've reviewed his before but cannot recall.20:38
cardoeThe last change has a ?? in it.20:39
cardoeJayF: no it doesn't conflict.20:40
cardoeBut I've got changes to his code that will need to happen afterwards.20:41
JayFif that's an area of the code you're familiar with, I'm sure he wouldn't mind more reviews, too20:41
cardoeBut I've got more ??? for the cores on how to work inspection.20:41
cardoeSo right now hooks only run on continue_inspection. Which relies on the node going to INSPECTWAIT and then getting hit with the callback.20:42
cardoeHis inspection rules also only runs on continue_inspection.20:42
cardoeBut with the addition of redfish as being able to run hooks (and in the future rules). There's no callback step. So I'm not going through the INSPECTWAIT step.20:43
cardoeYou want me to fake it out or just move straight to the step?20:44
JayFI'd have to look and think about it to be sure20:45
JayFmight be useful to see if we traverse a wait state in the manual cleaning but no agent case20:45
cardoeSo a lot is in the API endpoint for continue_inspection. Once cid’s work landed I was gonna make its own function that the API endpoint could call or redfish could call directly.20:51
cardoePurposefully trying to not conflict with his work.20:51
cardoecid: you got more examples of what I can do with rules? I think that would help me understand all the flows better.20:59
cidSo, I understand inspection rules as a way to conditionally take some actions on a node, during inspection.21:03
cidSeems everything that can be done manually through the CLI, can be presaved and performed by an inspection rule, based on also presaved conditions.21:04
cidcardoe: as per specific examples, there are just 15 action plugins so far, doing just three things.21:06
cidsetting and setting attributes on the node object, port, plugin data and logging.21:08
cid*unsetting.21:08
cardoeOkay. I’ll play with it. Just wanted some examples around combinations to sort out behavior specifics.21:11
cidExample to create a sample inspection rule you mean?21:12
opendevreviewVerification of a change to openstack/ironic-python-agent master failed: Trivial: fix reference of unusable i18n prefix  https://review.opendev.org/c/openstack/ironic-python-agent/+/94009621:20
cardoeYes.21:20
opendevreviewVerification of a change to openstack/ironic master failed: Add lsblk output to metal3 logs  https://review.opendev.org/c/openstack/ironic/+/93997621:21
cidNot in any way organized, but here: https://etherpad.opendev.org/p/working-in-openstack21:28
JayFthose kinda etherpads are golden \o/21:40
cid:-) 21:55
JayFhttps://review.opendev.org/c/openstack/ironic-python-agent-builder/+/939288 could use reviews (ironic-lib-deprecation)22:00
JayFsimilarly, https://review.opendev.org/c/openstack/sushy-tools/+/93940022:00
opendevreviewVerification of a change to openstack/ironic-python-agent master failed: Replace crypt module  https://review.opendev.org/c/openstack/ironic-python-agent/+/93717522:14
opendevreviewVerification of a change to openstack/ironic-python-agent master failed: Replace crypt module  https://review.opendev.org/c/openstack/ironic-python-agent/+/93717522:28
JayFI think the ironic-inspector ironic-lib removal thing's grenade failure may be real23:28
JayF:( I'll dig deeply into it tomorrow23:28
TheJuliaWe're shutting down inspector, we can likely remove grenade23:36
JayFIMO we should avoid doing that unless we're prepared to not release inspector this cycle23:38
TheJuliaI'm not going to reply, my headspace is not in the right place to have a constructive reply.23:39
opendevreviewMerged openstack/sushy-tools master: Import needed ironic-lib code  https://review.opendev.org/c/openstack/sushy-tools/+/93940023:56

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