Friday, 2026-08-14

opendevreviewKyuyeong Lee proposed openstack/python-openstackclient master: Network: Show ip_availability_details in ip availability  https://review.opendev.org/c/openstack/python-openstackclient/+/100068502:28
opendevreviewKyuyeong Lee proposed openstack/openstacksdk master: Network: Add ip_availability_details field  https://review.opendev.org/c/openstack/openstacksdk/+/100068202:29
opendevreviewyatin proposed openstack/openstacksdk master: [DNS] Increase the zones quota before creating a new one - v2  https://review.opendev.org/c/openstack/openstacksdk/+/100093306:51
opendevreviewArtem Goncharov proposed openstack/codegenerator master: fix(rust_tui): delegate ConfirmableRequest through aggregate enums  https://review.opendev.org/c/openstack/codegenerator/+/100072808:48
opendevreviewArtem Goncharov proposed openstack/codegenerator master: fix(rust_tui): delegate ConfirmableRequest through aggregate enums  https://review.opendev.org/c/openstack/codegenerator/+/100072809:42
opendevreviewyatin proposed openstack/openstacksdk master: [DNS] Increase the zones quota before creating a new one - v2  https://review.opendev.org/c/openstack/openstacksdk/+/100093310:40
opendevreviewMerged openstack/codegenerator master: fix(rust_tui): delegate ConfirmableRequest through aggregate enums  https://review.opendev.org/c/openstack/codegenerator/+/100072813:20
opendevreviewArtem Goncharov proposed openstack/codegenerator master: fix(rust-cli): Group kind-suffix response candidates by microversion  https://review.opendev.org/c/openstack/codegenerator/+/100087213:26
opendevreviewArtem Goncharov proposed openstack/codegenerator master: feat(rust-tui): support editor template for update operations  https://review.opendev.org/c/openstack/codegenerator/+/100088513:26
opendevreviewArtem Goncharov proposed openstack/codegenerator master: fix(rust-cli,rust-tui): dispatch response schema by resolved (not floor-only) microversion  https://review.opendev.org/c/openstack/codegenerator/+/100088113:27
opendevreviewStephen Finucane proposed openstack/openstacksdk master: Simplify ruff configuration  https://review.opendev.org/c/openstack/openstacksdk/+/100082713:34
opendevreviewStephen Finucane proposed openstack/openstacksdk master: Enable G, LOG ruff rules  https://review.opendev.org/c/openstack/openstacksdk/+/100082813:34
opendevreviewStephen Finucane proposed openstack/openstacksdk master: Drop setup.py, setup.cfg  https://review.opendev.org/c/openstack/openstacksdk/+/100082513:34
stephenfinmelwitt: Thanks, Mel. I've re-reviewed that and left a few (hopefully final) comments13:53
stephenfincardoe: Yup, they're both on my list. I've started on the gophercloud one already, but will likely try merge the ksa one first. It'll be next week at least though13:54
cardoestephenfin: I wanted your feedback on how we can provide a cache interface (or if we should)15:07
cardoeMy thought was a OSC plugin that provided that interface to ksa and used the keyring library for example and then the tokens aren't cached on disk.15:08
cardoeWe can do the cache interface as a follow on.15:08
opendevreviewMerged openstack/codegenerator master: fix(rust-cli): Group kind-suffix response candidates by microversion  https://review.opendev.org/c/openstack/codegenerator/+/100087215:44
opendevreviewMerged openstack/codegenerator master: fix(rust-cli,rust-tui): dispatch response schema by resolved (not floor-only) microversion  https://review.opendev.org/c/openstack/codegenerator/+/100088115:44
stephenfincardoe: I think openstacksdk already supports caching of tokens? Or do you mean something else?16:11
cardoeThis is something else.16:11
cardoeSo we you are using federation, we need to mint an unscoped token for the keystone shadow user that represents your federated user. Then we use that unscoped token to scope into the project or domain or whatever you're trying to work with.16:13
cardoeRetrieving that unscoped token involves round-tripping the web browser.16:13
cardoeSo we cache that unscoped token on disk with an expiration lifetime. Once that expiration is hit we delete it.16:14
stephenfinGotcha16:14
cardoeOtherwise every invocation of the "openstack" CLI would involve opening the web browser16:14
stephenfinyeah, which is the issue with e.g. the totp flow at the moment, iirc16:15
cardoeOur internal implementation has made some modifications to allow a client (python-openstackclient for example) to provide a tokencache interface16:15
stephenfinI've a feeling I've mentioned this on a review somewhere (maybe your old websso patch?) but this kind of caching is something I think should live in the application (OSC) here, with only hooks in the lib where needed16:15
cardoeYes you did.16:16
cardoeAnd that's what I'm wanting to discuss with you. A design for this.16:16
stephenfinaha, understood16:16
cardoeOur tokencache has a .get(cache_id) and a .set(cache_id, token) and a .delete(cache_id)16:16
cardoeAnd I'm using https://pypi.org/project/keyring/16:17
stephenfinThat broadly matches what I know from keyring16:17
stephenfinjinx 😅16:17
cardoeThe proper way to do it I see involves touching ksa and python-openstackclient and maybe more.16:17
cardoeWe've also got "openstack cloud [current,list,set,show,unset,use]" commands16:19
cardoeNot sure if you ever heard of https://github.com/major/supernova16:20
* stephenfin clicks16:20
stephenfinI have not16:21
stephenfinIs that still relevant with cloud files/OS_CLOUD?16:21
cardoeNo16:22
cardoeBut it was something Rackspace did before that existed.16:22
cardoeWe started a replacement that was OSC based forever ago as well.16:22
cardoeSo the websso implementation is coming from that code base.16:24
stephenfinAnd I guess this is relevant because the caching ties into the model for those "clouds"?16:24
cardoeyeah16:25
cardoeI'm happy to show you sometime if that'd be easier.16:25
cardoeI've got ~30 entries in my clouds.yaml16:26
cardoeI've also "fixed" one of the reasons that system scope and project scope token usage failed. Which was that it was annoying to have two OS_CLOUD representations and have to switch between the two for different operations.16:29
cardoeUnfortunately it breaks compat with stock OSC.16:30
cardoeBut that'd be another place I'd love to get your feedback on how I could do this in an upstreamable way.16:30
cardoeWhatever I change, I'm more than happy to contribute the same changes to gophercloud as well.16:31
cardoeOf course I realize I'm getting a bit ahead of myself here.16:34
cardoeSo happy to just get the websso stuff done. :)16:34
stephenfinAll sounds good. That would be interesting to see16:34
stephenfinBut yeah, going back to the websso stuff: if we could get it in without the caching first, that would simplify the change greatly I suspect16:35
stephenfinThen for the caching, I would normally suggest a spec, but we don't do those in SDK. So instead, how about we get a user doc that describes how to use the caching, which we can then use to inform the code?16:36
stephenfinI suspect how it "feels" is more important than the code, particularly given the different types of application we've to content with (file-based caching is far more important for short-lived processes like OSC than for long-lived ones like nova, while I guess threading is a concern for the latter but not the former)16:38
stephenfin...and, you know, the fact code is now cheap 😅16:40
opendevreviewArtem Goncharov proposed openstack/codegenerator master: fix(openapi): safely handle schemas missing 'type' field  https://review.opendev.org/c/openstack/codegenerator/+/100098316:49
opendevreviewMerged openstack/codegenerator master: fix(openapi): safely handle schemas missing 'type' field  https://review.opendev.org/c/openstack/codegenerator/+/100098318:06
opendevreviewmelanie witt proposed openstack/openstacksdk master: Add functional tests and Zuul job for accelerator (Cyborg)  https://review.opendev.org/c/openstack/openstacksdk/+/99585118:51
opendevreviewmelanie witt proposed openstack/openstacksdk master: Add AGENTS.md and document functional test conventions  https://review.opendev.org/c/openstack/openstacksdk/+/100099918:51

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