Monday, 2021-09-27

opendevreviewJacob Anders proposed openstack/ironic master: Add support for verify steps  https://review.opendev.org/c/openstack/ironic/+/80000105:27
arne_wiebalckGood morning janders and Ironic!05:56
jandersgood morning arne_wiebalck o/06:02
jandershow was your weekend?06:02
arne_wiebalcktoo short :)06:05
arne_wiebalckwhat about yours?06:06
jandersI needed a holiday after my holiday06:08
jandersso - taking it easy, not doing much06:08
jandersI needed some of that :)06:08
arne_wiebalckyeah, not sure why holidays usually "do not work" :)06:13
janders:)06:13
arne_wiebalckalways seem to need some rest after the rest06:14
iurygregorygood morning janders arne_wiebalck and Ironic o/06:26
jandersgood morning iurygregory o/06:26
arne_wiebalckI am trying to understand some nightly activity in our deployment: from our monitoring it seems that when Ironic loses BMC access to check the power, it gives up checking, changes a node's power state in the DB to 'None', but then comes back after a while (24 hours?) to recheck? (I have a rack full of nodes which have no access to the management network since some days and these nodes seem to trigger sth like this.)06:27
arne_wiebalckTheJulia: dtantsur ^^06:27
arne_wiebalckGood morning, iurygregory o/06:27
rpittaugood morning ironic! o/07:19
iurygregorygood morning rpittau o/07:20
rpittauhey iurygregory :)07:20
iurygregoryI'm trying to do some tests with sushy-tools locally, I've created the VM like mentioned in our docs https://docs.openstack.org/sushy-tools/latest/user/dynamic-emulator.html#systems-resource-driver-libvirt but when I'm trying to list Systems I get empty list of members .-., anyone tested this?07:33
dtantsurgood morning ironic, happy Monday08:48
jandershey dtantsur o/08:48
rpittauhey dtantsur :)08:48
dtantsurarne_wiebalck: yes, ironic will retry power faults periodically08:48
dtantsurthis was added a few releases ago and was one of the most commonly asked feature :)08:48
arne_wiebalckdtantsur: makes sense08:49
dtantsuriurygregory: mismatch between session types?08:49
dtantsurthere is a qemu:///system session and then there is your user session08:49
iurygregorygood morning dtantsur o/08:49
arne_wiebalckdtantsur: do you have a pointer to where this controlled?08:49
dtantsurhold on08:49
iurygregorydtantsur, oh ok let me try to check this... =)08:49
iurygregoryty!08:50
arne_wiebalck(this is super useful when nodes come back and Ironic self-heals :))08:50
dtantsurwe should really document it in https://docs.openstack.org/ironic/latest/admin/power-sync.html..08:50
arne_wiebalckyes08:50
arne_wiebalckI can add something once I read the code08:51
dtantsurarne_wiebalck: I can do it, I still have it more or less in the context08:51
arne_wiebalckperfect, thanks!08:51
arne_wiebalckdtantsur: I realised now that what I see is a one-off large drain/shutoff to prepare for a scheduled intervention (I also see the regular power recheck, but at a much higher frequency, which makes sense)09:16
opendevreviewDmitry Tantsur proposed openstack/ironic master: Document recovery from power faults  https://review.opendev.org/c/openstack/ironic/+/81109009:24
dtantsurarne_wiebalck: ^^^09:24
arne_wiebalckdtantsur: thanks, LGTM!09:41
opendevreviewMerged openstack/ironic master: Document recovery from power faults  https://review.opendev.org/c/openstack/ironic/+/81109010:07
opendevreviewTadeas Kot proposed openstack/ironic-inspector master: Add support for state selector in the list introspection  https://review.opendev.org/c/openstack/ironic-inspector/+/80757812:05
timeuHi all, anybody has seen the "boot option restoration" screen after deploying Lenovo machines with OSP 16.2 (https://pasteboard.co/m4LoiDGBCbKQ.png & https://pasteboard.co/RYt60CJ3HM6u.png) with Lenovo nodes ? One has to select ("Continue to boot" or "Always continue to boot") otherwise the node stays in a boot loop 12:26
opendevreviewMerged openstack/ironic stable/ussuri: [Stable only] remove require_exclusive_lock from detect_vendor  https://review.opendev.org/c/openstack/ironic/+/81065612:30
* iurygregory never saw this before =(12:32
janderssee you tomorrow Ironic o/12:36
opendevreviewVerification of a change to openstack/ironic master failed: require_exclusive_lock: log traceback that lead to an error  https://review.opendev.org/c/openstack/ironic/+/81061512:48
dtantsurtimeu: I haven't seen this either. you probably need to ask lenovo people what it means.12:55
timeuok will try to get hold of somebody. I think it might need cleanup of the UEFI entries because right now the node has 3 ironic related UEFI entries (i.e. : Boot0000* red   HD(1,GPT,69cc87f8-523a-42b6-9975-c0a176fda5c5,0x800,0x64000)/File(\EFI\red\grubx64.efi), Boot0005* Red Hat Enterprise Linux      HD(1,MBR,0xcdc23ed2,0x800,0x64000)/File(\EFI\redhat\shimx64.efi), Boot0009*12:59
timeuironic1       HD(1,GPT,90744a9a-c9bc-41f4-bcad-b716d12254bd,0x800,0x64000)/File(\EFI\BOOT\BOOTX64.EFI))12:59
dtantsurThe last one is from ironic, I the the first two are added by RHEL itself13:04
TheJuliagood morning13:14
iurygregorygood morning TheJulia 13:14
TheJuliatimeu: redfish or ipmi?13:15
* TheJulia tries to wake up13:16
dtantsurmorning TheJulia 13:18
timeuTheJulia: this is with the ipmi driver13:33
timeubut I haven't seen this behavior in OSP 16.1 tough, but also we updated the UEFI/BMC firmware between OSP 16.1 and OSP 16.213:33
timeuI know there was some UEFI related fixes between OSP16.1 and OSP16.213:33
TheJuliatimeu: mostly on bootloader config/setup, but using efibootmgr just to insert the next boot record13:37
TheJuliatimeu: lenovo hardware traditionally ignores persistant commands from what I understand, so the pattern we take should be ideal for it but at the same time now I'm wondering :\13:38
timeuhmm I can try to switch to redfish for the overcloud nodes and see if it shows a differnt behavior. 13:39
TheJuliatimeu: might as well13:41
TheJuliatimeu: this is largely the major difference in train w/r/t ipmi https://github.com/openstack/ironic/commit/41355d5a28fec5053060632fa06c1f8a669693fd#diff-0663a2e07480141672d2b0af61648fd38f0f343412d9e92a439c7faffc6d4628 13:42
TheJuliamajor difference is ironic uses raw instead of ipmitool hoping that the data gets passed/sent through13:42
TheJuliaAt least, for non-supermicro hardware13:43
timeuhmm I am wondering now: I ran into following issue https://bugzilla.redhat.com/show_bug.cgi?id=2007268 and dtantsur suggested to set vendor=ignoreme to workaround this issue until it is fixed. Could this be the reason for the other issue ?13:44
* TheJulia sighs13:45
TheJuliathat is a new one13:45
dtantsurI think we only explicitly check for "supermicro", "ignoreme" shouldn't trigger any logic13:46
dtantsurTheJulia: fix for bugzilla btw: https://review.opendev.org/c/openstack/ironic/+/81065613:46
opendevreviewJulia Kreger proposed openstack/ironic stable/train: [Stable only] remove require_exclusive_lock from detect_vendor  https://review.opendev.org/c/openstack/ironic/+/81115013:47
TheJuliawell if supermicro, changes behavior ever so slightly, but otherwise it is stock13:48
opendevreviewMerged openstack/ironic stable/xena: Set IPA download branch and MAX_MICROVERSION  https://review.opendev.org/c/openstack/ironic/+/81083513:54
opendevreviewVerification of a change to openstack/ironic master failed: require_exclusive_lock: log traceback that lead to an error  https://review.opendev.org/c/openstack/ironic/+/81061514:10
TheJuliaseems like ironic-tempest-ipa-partition-pxe_ipmitool  is becoming less and less stable :(14:14
dtantsuryeah, I've seen several failures today14:16
dtantsurit could be broken, I haven't checked, I must admit14:16
TheJuliaI've seen it fail sporatically last week14:32
TheJuliaall timing it looked like14:32
opendevreviewRiccardo Pittau proposed openstack/ironic-python-agent-builder master: Update qemu version  https://review.opendev.org/c/openstack/ironic-python-agent-builder/+/77650714:36
opendevreviewRiccardo Pittau proposed openstack/ironic-python-agent-builder master: Update qemu version  https://review.opendev.org/c/openstack/ironic-python-agent-builder/+/77650714:38
opendevreviewDanni Shi proposed openstack/ironic-python-agent master: Add an attestation extension  https://review.opendev.org/c/openstack/ironic-python-agent/+/80351014:55
TheJulia#startmeeting ironic15:00
opendevmeetMeeting started Mon Sep 27 15:00:35 2021 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
stendulkero/15:00
rpittauo/15:00
TheJulia#chair iurygregory 15:00
opendevmeetCurrent chairs: TheJulia iurygregory15:00
rlooo/15:01
TheJuliaWelcome to this week's Ironic meeting. I'm this week's host, TheJulia!15:01
opendevreviewDmitry Tantsur proposed openstack/bifrost master: Enable authentication in sushy-tools  https://review.opendev.org/c/openstack/bifrost/+/81068615:01
TheJuliaThis week's agenda... seems slightly out of date. :)15:01
TheJulia#link https://wiki.openstack.org/wiki/Meetings/Ironic#Agenda_for_next_meeting15:01
ajyao/15:01
erbarro/15:02
* TheJulia fixes it15:02
TheJuliaokay!15:03
TheJulia#topic Announcements / Reminders15:03
TheJulia#info Ironic released 18.2.0 last week \o/15:03
TheJuliaThis was the xena cycle release, and as such the stable branch has been created.15:03
sam_zheck yea!15:03
TheJulia#info Yoga PTG is in 3 weeks!15:04
TheJulia#link https://www.eventbrite.com/e/project-teams-gathering-october-2021-tickets-16123566922715:04
arne_wiebalcko/15:04
TheJulia#link https://etherpad.opendev.org/p/ironic-yoga-ptg15:04
TheJuliaDoes anyone have anything to announce or remind us of this week?15:05
* TheJulia takes silence as a no15:06
TheJuliaMoving on!15:06
TheJulia#topic Review action items from the previous meeting15:06
TheJuliaLast week we had two action items.15:06
TheJuliaThe first was for iurygregory to send an email regarding the upcoming PTG, which he did.15:07
TheJulia#link http://lists.openstack.org/pipermail/openstack-discuss/2021-September/025033.html15:07
TheJuliaThe second was to sync up with the release team regarding deliverables.15:07
TheJuliaiurygregory: are you available clarify a little further on this to us15:07
TheJulia?15:07
TheJuliaHmm, idle for 2 days. Okay!15:08
TheJuliatl;dr from iurygregory's notes is that items listed as cycle-with-rc will be moved to cycle-with-intermediary which seems to be a reverse, but okay!15:09
TheJuliaMoving on!15:09
TheJulia#topic Subteam Status Report15:09
TheJulia#link https://etherpad.opendev.org/p/IronicWhiteBoard15:09
*** redrobot is now known as Guest112915:09
TheJuliaI'm feeling like we should have articulated storage cleaning enhacements a little more on the whiteboard15:11
TheJuliaIs everyone good to proceed onward?15:12
arne_wiebalckyes15:12
rpittauyep15:13
TheJulia#topic Deciding on priorities for the coming week15:13
TheJulia#link https://review.opendev.org/q/hashtag:ironic-week-prio+status:open15:13
TheJuliaLooks like we've got some bug fixes trickling in, but it looks like most of them are already on the list15:14
TheJuliaDoes anyone have anything they would like to add to the list in gerrit?15:14
rpittauI've added https://review.opendev.org/c/openstack/bifrost/+/80632815:15
TheJuliasounds good to me15:16
TheJuliaAnyone have anything else?15:16
* TheJulia guesses no15:17
TheJuliaSince we have no Discussion topics listed, we will proceed directly to Baremetal SIG15:17
TheJulia#topic Baremetal SIG15:17
arne_wiebalckNext meeting scheduled for Tuesday October 12, 2021 at 4 PM UTC (note the unusual time!)15:17
TheJuliaarne_wiebalck: anything new? Plotting for before the PTG?15:17
arne_wiebalckThe idea is to get some input for the PTG. Let's see how it goes.15:18
TheJuliaSounds good!15:18
rpittauarne_wiebalck: oh that's a pity, going to miss that :/15:18
arne_wiebalckI pushed the time to 4pm for east coast attendees.15:18
arne_wiebalcksorry west coast15:18
TheJuliaunfortunately, it is during the time for the finance committee meeting15:19
TheJuliasilly finances :(15:19
arne_wiebalck As usual, make some publicity!15:19
arne_wiebalckoh15:19
TheJuliaI think I'll email the group and see if we can push it back an hour15:19
TheJuliaThe finance committee that is15:19
arne_wiebalckwe can also move the SIG meeting15:20
arne_wiebalckno announcement has gone out yet15:20
TheJuliaFewer people to loop in to see if I can move the finance committee meeting15:20
* TheJulia makes a note to email the members15:20
arne_wiebalckI think timeu still had some things to discuss to which we did not get last time15:20
arne_wiebalckTheJulia: ok, let me know15:20
arne_wiebalckrpittau: it is the day or the time which does not suit you?15:21
rpittauarne_wiebalck: the time, have a conflict downstream15:21
arne_wiebalckhm15:21
TheJuliahmm15:21
arne_wiebalckheh15:21
rpittau:/15:21
TheJuliaMaybe it might be worthwhile to adjust the time a little15:21
arne_wiebalckin which direction?15:21
TheJulia?either? Going earlier will make it harder for US west coast operators, but honestly it would be past EOD in Europe if we were to push it to a convenient time for them.15:22
arne_wiebalckyes15:22
TheJuliarpittau: would earlier by 1 hour work?15:23
rpittauyes, that would work for me15:23
arne_wiebalckwould that still work for west coast operators ?15:23
TheJuliait would be 8 am local15:23
TheJuliamost wouldn't really get their day started until 9-am and then it is the first thing in the morning items.15:24
TheJuliaso 8 is *likely* better all around15:24
TheJuliaat least for those that wake up around 7, as opposed to those that wake up at 8 or 9 am :)15:24
arne_wiebalckanother option would be a "US" one later that day (if we find someone to host) 15:25
TheJuliaI would be happy to host15:25
TheJuliaIf we want to hold two I think that could actually work really well15:26
TheJuliasince it is feedback loop into the PTG15:26
TheJuliaOverall, that brings more creedence to commonalities between sessions15:26
arne_wiebalckok, then we keep the usual slot at 2pm UTC and I let you decide on a later one? Once we have this, we sent out a single announcement.15:27
TheJuliasounds good to me15:27
TheJuliaI'll ping a couple operators to see what would be the best time on that same day for US friendly  time15:27
arne_wiebalckawesome, thanks TheJulia !15:27
arne_wiebalckI think that is it for the SIG15:28
TheJuliaAwesome15:30
TheJuliaWell, we have no discussion items...15:30
* dtantsur realizes the meeting is happening15:30
TheJuliaSo onward to Open Discussion15:30
TheJulia#topic Open Discussion15:30
* TheJulia gives dtantsur coffee15:30
dtantsurThank you :) Open discussion: how to stop getting lost in time?15:30
dtantsuron the bright side, I typed some letters: https://owlet.today/posts/integrating-coreos-installer-with-ironic/15:31
arne_wiebalckTheJulia: going over the questions worked well last time :)15:31
TheJuliaarne_wiebalck: awesome!15:31
rloonice letters dtantsur!15:33
dtantsur:)15:33
dtantsuranother open discussion: outreachy - yes/no?15:33
TheJuliaIf annyone has any ideas: https://github.com/OpenStackweb/ironic-website/pull/4315:33
TheJuliadtantsur: sure!? but what?15:34
dtantsurokay, lemme go through the storyboard today15:34
dtantsurI'm quite sure we can find something small15:34
TheJuliasounds good to me15:35
dtantsurwho is mentoring this time?15:36
dtantsurI can continue, but I'll also happily hand it over to someone, especially someone new to mentoring15:36
TheJuliaI guess I can mentor15:36
TheJuliaI do need to do more mentoring this winter15:37
dtantsurmaybe the driver_info reform (username renaming and so on)?15:37
TheJuliasingle parameter defaults and the like15:37
TheJuliayeah15:37
TheJuliaI like that a lot15:38
TheJuliaand that simplifies some of the vendor driven delineations and confusion we've had over the years15:38
dtantsuryep15:38
dtantsurwe can increase the scope a bit to collect, understand and document all driver_info fields we use15:38
dtantsurwanna write an RFE? or do we have one?15:38
dtantsurbtw I can co-mentor if nobody else wants. just for HA reasons.15:39
TheJuliaI thought we had one15:39
TheJuliadtantsur: I think that would be good15:39
rpittauI could co-mentor too 15:40
TheJuliadtantsur: ++++15:40
TheJulia++++ w/r/t documenta s well15:40
TheJuliadocument15:40
* TheJulia can't type today15:40
dtantsurtyping is overrates15:40
dtantsurhmmm15:40
dtantsurwhat about we have a review jam dedicated to old RFEs15:40
dtantsurthere are so many items, reaction to which is "mmm, cool idea, will not happen"15:41
TheJuliaThat would be good for tomorrow15:41
TheJuliawhat times tomorrow?15:41
dtantsurdid we have a normal slot?15:41
TheJuliaWe do, I have a 7 am it looks like15:41
* TheJulia looks up the slots15:41
TheJuliaugh, I have another board related meeting at the first slot tomorrow15:42
TheJuliaI can do the later slot just fine15:42
dtantsurwhat time UTC?15:42
TheJuliaThis says 5PM UTC15:43
*** pmannidi is now known as pmannidi|AFK15:43
dtantsura bit uncomfortable but doable15:43
dtantsurI assume a bit too late for other europeans?15:44
TheJuliaWe could also decide and say 4pm is the time tomorrow15:44
TheJuliaI'm good with 4PM fwiw15:44
dtantsursame15:44
TheJuliaI propose we meet at 4pm?15:44
TheJuliaAny objections?15:44
dtantsuranyone else?15:44
sam_zwould that be a good time to bring up the power spec proposal? 15:44
TheJuliasam_z: yes, but I'm also happy to discuss/review it after this meeting too :)15:45
sam_zoh neat!15:45
TheJuliaI just need to find a storyboard item # and post a BZ15:45
dtantsurwell, I wanted to go through the list of reviews15:45
dtantsuroh15:45
dtantsurs/reviews/RFEs/15:45
TheJuliadtantsur: yeah, we'll do that tomorrow15:45
dtantsurmore like: yay/nay15:45
TheJuliaheh15:45
* dtantsur can neither type nor think15:45
TheJuliaI think we're good and on the same page15:45
sam_zmondays...15:45
TheJuliaeven if neither of us can type15:45
dtantsurwhich is to say, let's discuss sam_z's proposal after the meeting?15:45
TheJuliaAnything else before we move onward?15:46
TheJuliadtantsur: ++15:46
TheJuliamaybe after meeting + time to make coffee15:46
dtantsurfair15:46
TheJuliaMoving onward!15:46
sam_znothin of substance from me here15:46
TheJulia#topic Who is going to run the next meeting?15:46
TheJuliaI'm guessing, next week's Vict^H^H^Holunteer is iurygregory :)15:46
TheJuliaI don't know if I'll be around next week, I've got a Jury summons :(15:47
dtantsurI think I can do it next week15:47
TheJuliaOkay!15:47
dtantsurunless iurygregory wants MOAR POWER :D15:47
TheJuliaoh no, MOAR POWER jokes15:47
TheJuliaTime to call it a meeting!15:47
TheJuliaThanks everyone!15:47
dtantsuro/15:48
TheJulia#endmeeting15:48
opendevmeetMeeting ended Mon Sep 27 15:48:08 2021 UTC.  Information about MeetBot at http://wiki.debian.org/MeetBot . (v 0.1.4)15:48
opendevmeetMinutes:        https://meetings.opendev.org/meetings/ironic/2021/ironic.2021-09-27-15.00.html15:48
opendevmeetMinutes (text): https://meetings.opendev.org/meetings/ironic/2021/ironic.2021-09-27-15.00.txt15:48
opendevmeetLog:            https://meetings.opendev.org/meetings/ironic/2021/ironic.2021-09-27-15.00.log.html15:48
sam_z https://review.opendev.org/c/openstack/ironic-specs/+/808804/ <- code review page and storyboard page -> https://storyboard.openstack.org/#!/story/200918415:55
sam_z(no rush tho! i appreciate y'all's time regardless!)15:55
TheJuliawow, 994 lines!15:59
arne_wiebalcksam_z: can't you make it 1000 ? ;)15:59
TheJuliaarne_wiebalck: are you singing "When you're evil" ?16:00
arne_wiebalckheh16:00
TheJuliaif so, it would be totally approvable and I would happilly join along :)16:00
arne_wiebalckno, when I saw 994 lines I was proud we take the spec process very seriously16:01
arne_wiebalcksrsly, that was my first thought 16:01
sam_zi will add exactly 5 more, no more no less16:02
arne_wiebalck:-D16:02
arne_wiebalckthe real challenge will be to keep it at 1000 when incorporating feedback16:02
sam_zi uh. really wanted to be thorough i suppose. on the bright side i imagine it will also save me time writing documentation when the time comes16:02
* arne_wiebalck is not sure if he is helping the "we take specs serious" case here16:03
dtantsurI remember on my first pass I stumbled upon the authentication16:03
dtantsurmy first reaction was "wtf, why session service"16:03
dtantsurthen I started reading the details, and it kind of started making sense..16:04
dtantsurbut I have headache from keystone :)16:04
dtantsursam_z: could you summarize, in simple words, what you're doing with SessionService?16:04
dtantsur.. and whether the whole thing works with standalone (HTTP basic) auth?16:05
sam_zessentially i plan on using it as a way for redfish clients to authenticate via keystone (making auth tokens and the like) through a redfish-compatible interface16:05
dtantsursam_z: okay, so Session ID is pretty much keystone token in disguise?16:06
sam_zyes.16:07
sam_zi wanted to add as little new things as possible16:07
dtantsurand the auth endpoint is just a pass-thru to keystone?16:07
* sam_z is not sure if that is correct grammar but i digress16:07
sam_zessentially16:07
dtantsurenglish doesn't have grammar, anyone does what they want16:08
* dtantsur ducks16:08
dtantsursam_z: got it. makes sense, just don't forget that we also have the standalone use case (with HTTP basic auth).16:08
sam_zi did bring up a consideration for http basic auth in around the middle of the spec16:08
sam_zline 223 (thats a lot of lines lol)16:09
dtantsurah, cool. yeah, I haven't read it again, trying to clear up the most confusing parts first16:09
dtantsureverything else should be straightforward16:09
dtantsurokay, actually16:10
dtantsursam_z: how do you pass scope parameters to keystone? I think it's authentication requires user_domain_id, project_id/name and project_domain_id16:10
dtantsurmmm, probably not for app credentials? I don't know much about app credentials.16:10
sam_zah so that's a problem i ran into and i plan to solve it by making the user generate an application credential to use for authentication16:10
dtantsurthey're not scoped?16:11
dtantsuror rather: the user ID already has a scope?16:11
sam_zthey should be scoped when created i think16:11
dtantsurwhich even makes sense. yes.16:11
dtantsurokay, I should finally stop torturing you and start reading :)16:11
sam_zapp creds from what i've read are scoped to user and project which i think implicitly assumes a domain? 16:12
dtantsuryeah, in keystone v3 users and projects exist in a domain16:12
dtantsur.. which doesn't 100% guarantee that keystone doesn't want domain to be specified16:12
dtantsurhave you tried playing with app credentials? I have 0 experience.16:12
sam_zi have not actually16:13
sam_zi will make a point to do that, today ideally16:13
sam_zif not today then soon (tm)16:13
dtantsur:)16:13
* dtantsur wonders if TheJulia knows everything about keystone now :)16:14
sam_zthis makes me think if you use auth token id + secret for authentication you don't need to specify anything more: https://docs.openstack.org/keystone/latest/user/application_credentials.html#using-application-credentials16:14
dtantsuryeah, just reading the same thing16:15
dtantsurseems you're right16:15
TheJuliaeverything, eek?!16:19
* TheJulia hides16:19
TheJuliasorry, haven't started reviewing, got interrupted and now dealing with the 2nd interrupt16:20
TheJuliaso reading, I also thought about app credentials on my frist reading16:29
TheJuliaBut, it *feels* like  we can and *should* drop keystone credentials and details16:29
TheJuliathen again, logging might be a little weird then16:30
TheJuliabecause we wont' have a real context object16:30
TheJuliawell, it would be full of none's16:30
dtantsursam_z: I've left some comments. -1 is mostly because of some confusion around power states in one section and because of basic auth (we need it for standalone)16:30
TheJuliadtantsur: concur w/r/t basic auth16:30
TheJuliaor at least, non-session based auth16:30
dtantsurTheJulia: re keystone: when asking keystone for a token, we'll probably receive enough data to build a context.16:31
TheJuliayes you do16:31
TheJuliaand if you re-validate a token you get the context populated via middleware16:31
TheJulia*but* we also don't *need* context really under the hood16:31
TheJuliawe don't do any policy validation below the API layer16:32
sam_zso basic auth is a necessity?16:32
dtantsursam_z: unfortunately yes. we have a very strong case for not using keystone in some deployments.16:32
TheJuliayeah, one-off operations/interactions with tools tend to be basic auth based16:32
dtantsur(disclosure: I work on metal3, we use ironic without openstack)16:32
sam_zvery fair. i honestly thought all clouds used keystone lol16:32
* TheJulia remembers bmc firmware versions which actually allowed basic auth to work better... rather unexpectedly16:32
dtantsursam_z: ironic is a bit special, we have use cases outside of openstack16:33
dtantsurmetal3 is kubernetes16:33
dtantsur"fun" fact: some BMCs have a pretty hard limit on the number of open sessions16:33
sam_zinteresting, i will keep that in mind.16:34
sam_zso should basic auth *not* involve keystone at all?16:34
dtantsuroh, well. we have 2 options:16:35
dtantsur1) require sessions when keystone is enabled, use HTTP basic when it's not16:35
dtantsur2) support HTTP basic in both cases16:35
dtantsur1) is more compatible, 2) is more... correct?16:35
dtantsurwait, the other way around16:35
dtantsur2) is more compatible, 1) is more correct16:36
sam_zi think 2) could work via a config option16:36
dtantsurpossibly16:36
dtantsurI don't have a strong opinion here16:36
sam_zlike REDFISH_PROXY_ALLOW_BASIC_AUTH_KEYSTONE or something16:36
dtantsurI know that some hardware only allows session auth, some - only basic auth16:36
dtantsurif we start with supporting only session auth for keystone, it will be fine IMO16:37
sam_zok! i think when i update the spec, i will update it with 1) in mind but leave a note mentioning that if necessary we could also allow basic auth with keystone if the need arises16:38
sam_znow i suppose the question for basic auth without keystone is-- how should credentials be handled16:38
dtantsursam_z: we have a middleware for that16:38
TheJuliaand if they see everything in that case, it is likely okay16:39
dtantsursam_z: https://opendev.org/openstack/ironic-lib/src/branch/master/ironic_lib/auth_basic.py16:39
dtantsuryeah, without keystone there is no rbac, everyone sees everything16:39
dtantsursam_z: tl;dr when basic auth is used, we have an apache-compatible file with password hashes16:39
sam_zah so would the user simply need to supply like, a database connection or something?16:40
sam_zor not the user16:40
sam_zthe operator16:40
dtantsurI think you can happily ignore these details. the hashes are simply in a file, not even the database16:40
opendevreviewMerged openstack/ironic stable/train: [Stable only] remove require_exclusive_lock from detect_vendor  https://review.opendev.org/c/openstack/ironic/+/81115016:40
dtantsursam_z: if you're really curious, this is the commit adding basic auth support to bifrost: https://opendev.org/openstack/bifrost/commit/bcda97b6308eda47a80b6290d06bc43dbe5032a316:41
dtantsuryou can see from it what it entails on the operator's side16:41
dtantsurbut you personally can expect everything to be set up16:41
TheJuliaalso, we don't do policy/lookup filtering in basic auth cases, so it makes some of the considerations kind of easier to work through16:41
dtantsurbecause the native ironic API will use the same auth16:41
sam_zso from my perspective, i should: 1) figure out if keystone is enabled, 2) if not, attempt basic auth, 3) take the creds and hand them off to the middleware for authentication, 4) if middleware gives me the thumbs up, allow the request, and if not, handle the request w an error?16:42
dtantsursam_z: sounds about right16:43
sam_znice.16:43
dtantsur#1 corresponds to the auth_strategy option16:43
TheJuliasam_z: and likely leverage if the keystone session has a project_id, then run queries with that project_id16:43
sam_zwhat should be done about the case where a user has tools that only expect to work with sessionservice for authentication but there is no keystone?16:44
dtantsurHTTP 400 Bad Request16:44
dtantsurlet's not solve too many corner cases at once :)16:45
sam_zvery true, very true.16:45
dtantsurthese tools will also not work with a lot of real-life hardware16:45
dtantsursam_z: what we should do is to hide the session endpoints when sessions are not supported16:46
dtantsurthe tools may decide based on the presence of SessionService16:46
sam_zah that's true.16:48
sam_zthat sounds like a good solution, and i will update the spec to reflect it!16:48
dtantsurawesome, thank you!16:48
sam_zok! so i think that's all the points of confusion i wanted to clear up with y'all, so thanks a bunch dtantsur and TheJulia! 16:52
sam_zi'll be lurking in this channel regardless so if there's anything else to talk about regarding this, i should be around :)16:53
dtantsur++16:54
dtantsurhave a nice evening folks o/17:02
TheJuliagoodnight dtantsur 17:02
* TheJulia frees memory becasue OMGTOOMANYTABS17:02
iurygregoryTheJulia, sorry I took some medicine for headache and got some rest in the afternoon, about the deliverables, remember that 2 weeks ago we talked about the deliverables with cycle-rc (by default is a major bump), to avoid giving the the users the false impression that we have a lot of additions that would require a major bump I've talked with the release team and it makes sense to have the rc deliverables moved 18:21
iurygregoryto cycle-with-intermediary so we can have a better control (ngs, networking-baremetal, ironic-ui, ironic-prometheus-exporter)18:21
iurygregoryso when yoga is open in the release repo we can update the deliverables and get feedback from the release team (Herve is ok with this change)18:22
TheJuliaiurygregory: heh, so wow, yeah, that is like the reverse action of the past. Okay!18:56
iurygregoryTheJulia, yeah, I should have added the irc logs in the agenda XD  https://meetings.opendev.org/irclogs/%23openstack-release/%23openstack-release.2021-09-27.log.html 19:34
-opendevstatus- NOTICE: Gerrit and Zuul services are being restarted briefly for configuration and code updates but should return to service momentarily20:09
opendevreviewRiccardo Pittau proposed openstack/ironic-python-agent-builder master: Update qemu version  https://review.opendev.org/c/openstack/ironic-python-agent-builder/+/77650721:10
TheJuliastevebaker: https://storyboard.openstack.org/#!/story/200925521:44
jandersgood morning Ironic o/23:58

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