Tuesday, 2022-02-08

*** ysandeep|out is now known as ysandeep03:57
*** ysandeep is now known as ysandeep|afk07:11
opendevreviewMerged openstack/ansible-collections-openstack master: Move identity domain to use proxy layer  https://review.opendev.org/c/openstack/ansible-collections-openstack/+/82726708:36
*** ysandeep|afk is now known as ysandeep08:45
opendevreviewShnaidman Sagi (Sergey) proposed openstack/ansible-collections-openstack master: Add CentOS 9 tripleo job  https://review.opendev.org/c/openstack/ansible-collections-openstack/+/82706609:29
*** dviroel|out is now known as dviroel|ruck10:05
sshnaidmgtema, can you comment on question please? https://review.opendev.org/c/openstack/ansible-collections-openstack/+/825291/10/plugins/modules/network.py  11:58
*** ysandeep is now known as ysandeep|mtg12:01
opendevreviewShnaidman Sagi (Sergey) proposed openstack/ansible-collections-openstack master: Move compute flavor info to use proxy layer  https://review.opendev.org/c/openstack/ansible-collections-openstack/+/82810812:13
opendevreviewShnaidman Sagi (Sergey) proposed openstack/ansible-collections-openstack master: DNM test flavor changes  https://review.opendev.org/c/openstack/ansible-collections-openstack/+/82829012:13
opendevreviewAnanya proposed openstack/ansible-collections-openstack master: Moves image_info from cloud to proxy object  https://review.opendev.org/c/openstack/ansible-collections-openstack/+/82815812:14
sshnaidmfrenzy_friday, can you please add test for image_info in a different patch like that?  https://review.opendev.org/c/openstack/ansible-collections-openstack/+/82829012:16
frenzy_fridaysshnaidm, ack, thanks12:16
opendevreviewAnanya proposed openstack/ansible-collections-openstack master: DNM testing image info changes  https://review.opendev.org/c/openstack/ansible-collections-openstack/+/82829412:21
frenzy_fridaysshnaidm, is this the right syntax https://review.opendev.org/c/openstack/ansible-collections-openstack/+/828294 ?12:21
sshnaidmfrenzy_friday, you can't depend on same repo patch, need to push testing patch "above" yours12:22
sshnaidmjust add another commit and answer "yes" for git review12:23
opendevreviewAnanya proposed openstack/ansible-collections-openstack master: DNM testing image info changes  https://review.opendev.org/c/openstack/ansible-collections-openstack/+/82829412:23
opendevreviewAnanya proposed openstack/ansible-collections-openstack master: DNM testing image info changes  https://review.opendev.org/c/openstack/ansible-collections-openstack/+/82829412:23
frenzy_fridaysshnaidm, oh right!  done12:23
sshnaidmfrenzy_friday, exactly, thanks!12:23
*** ysandeep|mtg is now known as ysandeep12:55
opendevreviewArx Cruz proposed openstack/ansible-collections-openstack master: Move compute flavor info to use proxy layer  https://review.opendev.org/c/openstack/ansible-collections-openstack/+/82810813:04
*** ysandeep is now known as ysandeep|coffee13:04
opendevreviewShnaidman Sagi (Sergey) proposed openstack/ansible-collections-openstack master: DNM test flavor changes  https://review.opendev.org/c/openstack/ansible-collections-openstack/+/82829013:07
opendevreviewAnanya proposed openstack/ansible-collections-openstack master: DNM testing image info changes  https://review.opendev.org/c/openstack/ansible-collections-openstack/+/82829413:35
*** ysandeep|coffee is now known as ysandeep13:39
sshnaidmgtema, is "properties" in project processed somehow? I do conn.identity.create_project(name="someone", properties={"test": "testvalue"}) with a new sdk and I don't see any "test" in outputs13:41
gtemaproperties is not a real stuff in project13:43
gtemado we have some custom stuff there that is not currently supported by resource?13:44
opendevreviewShnaidman Sagi (Sergey) proposed openstack/ansible-collections-openstack master: WIP fix collection for new SDK  https://review.opendev.org/c/openstack/ansible-collections-openstack/+/82529113:44
sshnaidmgtema, I see it here: https://github.com/openstack/ansible-collections-openstack/blob/master/plugins/modules/project.py#L36-L3913:45
sshnaidmgtema, interesting why it's accepted then when creating project13:46
gtemawell, actually project in keystone allows adding some custom props (as options)13:47
gtemahttps://docs.openstack.org/api-ref/identity/v3/index.html?expanded=token-authentication-with-scoped-authorization-detail,create-project-detail#create-project13:47
gtemayeah, so you might want to pass it into the create as options (which is supported) and not "properties", which was an old name in times of v2 I guess13:48
sshnaidmgtema, seems like it's different from properties: https://paste.opendev.org/show/812584/13:49
sshnaidmfrenzy_friday, depends-on on same repo patch doesn't work really13:49
sshnaidmfrenzy_friday, wrt https://review.opendev.org/c/openstack/ansible-collections-openstack/+/828294/13:50
gtemaif I know it correctly the backend keystone need to be configured to allow specific extensions13:50
gtemamean specific attributes13:50
frenzy_fridaysshnaidm, sorry, forgot to pull the rebase before I updated the patch..13:50
opendevreviewAnanya proposed openstack/ansible-collections-openstack master: DNM testing image info changes  https://review.opendev.org/c/openstack/ansible-collections-openstack/+/82829413:51
opendevreviewAnanya proposed openstack/ansible-collections-openstack master: DNM testing image info changes  https://review.opendev.org/c/openstack/ansible-collections-openstack/+/82829413:51
sshnaidmgtema, ack..13:52
sshnaidmso with default devstack it won't work13:52
gtemaI guess this is also something that nobody ever tested properly13:53
sshnaidmgtema, well, with old SDK it works and return properties, our collection tests always tested it and fail on new sdk only: https://github.com/openstack/ansible-collections-openstack/blob/master/ci/roles/project_properties/tasks/main.yml#L213:54
sshnaidmactually there is a whole role dedicated just to test project properties13:54
gtemahmm13:55
sshnaidmgtema, for history: https://github.com/openstack/ansible-collections-openstack/commit/c1a2496e0ff3e8b3d9b70cb8058834adb9b3509913:56
sshnaidmthere is a dependency on SDK13:56
sshnaidmhttps://review.opendev.org/c/openstack/openstacksdk/+/715255/13:56
sshnaidmhmm.. seems like it's for update_project only13:57
gtemait is really weird that the test only verifies dummy_key in the create/update operation, but I do not see check for reading it13:58
sshnaidmgtema, there are "assert" after each task13:59
gtemabut those are not reading. I mean if the code was just leaving this attr and giving it back - it would be passing13:59
gtemashould not happen actually14:00
sshnaidmgtema, it's returned by conn.update_project14:00
gtemaI am honestly confused how this is/supposed_to work14:01
gtemathis is not something that I can assume from keystone api docs14:01
gtemaas if keystone would support additional (not specified) attributes (like image does) but doesn't shed a single word on that14:03
sshnaidmgtema, old and new sdk outputs: https://paste.opendev.org/show/812588/14:05
sshnaidmseems like old returns Much in properties14:05
sshnaidms/Much/Munch/14:06
sshnaidmand it's cloud function "update_project"14:06
gtemahttps://opendev.org/openstack/openstacksdk/src/commit/60d04799a776efb31e32a8e356c91a635632fc54/openstack/cloud/_normalize.py#L687 - this is where the conversion logic was happening14:07
sshnaidmthe proxy one doesn't doesn't return much14:07
gtemamean whatever is non-standard returned by API is reported as "properties"14:07
gtemaand whatever you pass to the SDK call would be passed without thinking further to API14:07
gtemathat is not really right. I hate such undocumented behaviors14:08
gtemaI can enable this type of behavior for project (same as for image and most of network resources), but I would really be interested to hear from Keystone whether this is a bug or a undocumented feature14:09
sshnaidmgtema, so how to explain lack of "properties" in a new sdk?14:09
gtemado you have somebody from keystone to check?14:10
sshnaidmgtema, nope.. but I use the same keystone, it seems like SDK processing it..?14:11
gtemaI mean I am not a fan if implementing undocumented behavior14:11
gtemapreviously it was not thinking of the input. Now it does14:12
sshnaidmyeah, can't see it in docs as well14:16
gtemabad14:21
sshnaidmand seems like people use it a lot..14:21
gtemareally?14:22
gtemain this case I can enable handling of "undocumented" props in project. But I would really like to have Keystone folks to comment on that14:23
sshnaidmlet's ask them, where are they? #openstack-keystone?14:24
gtemadon't know, maybe14:25
sshnaidmasking there..14:26
sshnaidmarxcruz, commented https://review.opendev.org/c/openstack/ansible-collections-openstack/+/828108 - please add a few module executions in tests14:30
sshnaidmknikolla> sshnaidm: it is supported in v3, though we try to encourage people not to use it.14:38
sshnaidmgtema, ^^14:38
gtemahehe, as I expected14:39
sshnaidmwell, seems like I'm gonna leave it as is, who want the old behavior - use the old sdk..14:40
gtemayeah, I would also go this way. If we can "help" service creators to discourage bad behavior - let's do this.14:43
sshnaidmdamn, we had really a whole role to test it..14:50
sshnaidmsuch an investment14:51
opendevreviewShnaidman Sagi (Sergey) proposed openstack/ansible-collections-openstack master: WIP fix collection for new SDK  https://review.opendev.org/c/openstack/ansible-collections-openstack/+/82529114:56
gtemaI know I am not making friends by making such defensive decisions, but somebody need to be a janitor ;-)14:57
sshnaidmgtema, sure, no problem with that :)14:59
sshnaidmtime to break!14:59
gtemayuhui15:04
gtemayuppi yey15:04
*** dviroel|ruck is now known as dviroel|ruck|lunch15:11
*** ysandeep is now known as ysandeep|dinner15:14
arxcruzsshnaidm ack, i'll do it 15:31
sshnaidmgtema, probably worth to make a release before any of breaking changes are going in15:34
sshnaidmrelease of collection I mean15:34
sshnaidmand then finally to cut stable-1.0.015:34
gtemayeah, makes sense15:35
sshnaidmjm1, so new sdk don't pass some deprecated keys in output, and we need to decide if we want backward compatibility (and then using to_dict(original_names=True) or don't want and then just using new names only15:44
*** ysandeep|dinner is now known as ysandeep15:44
sshnaidmI was inclined into merging both of them together, but if we are going to break anyway collection, then we'd better just to use the new output15:45
sshnaidmif we can't keep backward compatibility in everything, not sure if we need to try at all..15:45
sshnaidmbut still open to ideas/suggestions of course15:45
sshnaidmdmsimard, wdyt about? ^^15:46
sshnaidmas voice of ansible :)15:46
jm1sshnaidm: new SDK will return new keys, e.g. openstack.network.ips() will return a new tenant_id entry which is a copy of project_id. What do we do about these new-but-somehow-deprecated fields?15:47
sshnaidmjm1, tenant_id is deprecated I think15:48
sshnaidmproject_id is the "new" one15:48
jm1sshnaidm: do we want to return this new field "tenant_id" from floating_ip_info although it is deprecated?15:51
sshnaidmjm1, that's exactly the dilemma I talked above :)15:55
sshnaidmI know gtema doesn't want to return "old" values15:55
gtemayeah, he doesn't15:56
gtemasooner or later even neutron will stop having it, so why don't we use this breaking time to get rid of things that will definitely go away15:57
jm1sshnaidm: next question: entries from openstack.network.ips() which have been to_dict'ed contain Munch objects, e.g. see key location and project. The floating_ip_info module drops the location entry but not project, the latter gets dropped by Ansible. What to do?15:58
sshnaidmjm1, dropped by Ansible?15:59
sshnaidmhow is it dropped there?16:01
jm1sdk returns this project Munch, floating_ip_info module does not drop it but Ansible wont show it. so who else than Ansible should drop it?16:03
sshnaidmjm1, can you paste please the output of ansible run in https://paste.opendev.org/ ?16:04
*** dviroel|ruck|lunch is now known as dviroel|ruck16:06
jm1new sdk output: https://paste.opendev.org/show/812595/16:09
jm1ansible output: https://paste.opendev.org/show/812594/16:09
jm1old sdk output: https://paste.opendev.org/show/812597/16:10
jm1sshnaidm: both have 'project' Munch. Only new sdk has tenant_id16:11
sshnaidmjm1, well, "project" is part of "location" dictionary16:18
sshnaidmso it's removed when "location" is removed16:18
sshnaidmand that's good, we don't need to return Munches16:19
jm1Munch objects are not returned by Ansible (at least in v2.12). If we drop "dt.pop('location')" this changes nothing16:26
jm1..at least it is not outputted16:27
jm1so what to do? drop "dt.pop" statements?16:28
jm1i would drop them and add a assertion to the Ansible fip role which checks the output parameters16:28
sshnaidmjm1, I think ansible will return if it has them16:29
jm1no, ansible will not return them. example role: https://paste.opendev.org/show/812600/16:31
jm1example output: https://paste.opendev.org/show/812601/16:32
sshnaidmjm1, yeah, because "location" is popped16:32
jm1nope, i dropped the dt.pop from the floating_ip_info module16:33
sshnaidmjm1, try to drop "dns_name" and see if it disappears from output16:34
sshnaidmjm1, example of routers output, when location is not dropped: https://paste.opendev.org/show/812602/16:34
jm1sorry, you are right. i should stop watching all-hands meetings while debugging..16:37
jm1'project' Munch is a subkey of 'location' so of course it is dropped as well 🤦16:40
sshnaidmgtema, I see "interfaces_info" is completely gone from routers output, is it intentional?17:07
gtemawhat was there before?17:08
gtemathis is not a real property17:08
jm1sshnaidm: should we add assertions to catch output changes? Example: https://paste.opendev.org/show/812604/17:10
sshnaidmgtema, ha, you're right, we calculate this.. using "network:router_gateway" https://github.com/openstack/ansible-collections-openstack/blob/master/plugins/modules/routers_info.py#L172-L18217:11
sshnaidmjm1, well, I think it's probably an overhead17:11
jm1ok17:11
gtemahmm, again those nifty things17:12
*** sshnaidm is now known as sshnaidm|afk17:18
*** ysandeep is now known as ysandeep|out17:21
opendevreviewJakob Meng proposed openstack/ansible-collections-openstack master: Drop deprecated fields in floating_ip_info and assert remaining fields  https://review.opendev.org/c/openstack/ansible-collections-openstack/+/82838417:41
*** dviroel|ruck is now known as dviroel|ruck|afk22:02

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