16:00:11 #startmeeting api sig 16:00:12 Meeting started Thu Mar 29 16:00:11 2018 UTC and is due to finish in 60 minutes. The chair is elmiko. Information about MeetBot at http://wiki.debian.org/MeetBot. 16:00:13 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 16:00:15 The meeting name has been set to 'api_sig' 16:00:20 #chair cdent elmiko edleafe dtantsur 16:00:21 Warning: Nick not in channel: cdent 16:00:22 Current chairs: cdent dtantsur edleafe elmiko 16:00:40 #link https://wiki.openstack.org/wiki/Meetings/API-SIG#Agenda 16:00:57 o/ 16:00:59 \o 16:01:03 tc is navel gazing 16:01:23 omphaloskepsis, my favorite past time =) 16:02:16 #topic previous meeting action items 16:02:23 #link http://eavesdrop.openstack.org/meetings/api_sig/2018/ 16:02:52 so, i reviewed 444892 and added my comments on the review 16:03:07 saw that, how should we proceed? 16:03:38 i think it would be cool to fix up the doc, add the missing material, and then have it link off the microversion guideline with a "read some history" type note 16:03:56 it's certainly not a guideline, but it is an interesting read imo 16:04:20 It could help people to get to the more basic why of it, rather than just because "openstack says so" 16:04:25 right 16:04:46 that's kinda why i think it would be cool to have a link at the top of the microversion guideline to it 16:05:06 clearly warning the reader that it is editorial/history and not guideline 16:05:33 yeah 16:05:44 are you volunteering or do you want to pass the ball? 16:05:46 That was my impression, too 16:06:04 Not a guideline at all 16:06:07 i could help fix it up, but i'm not sure i have the context for the one section where Sean mentioned diagrams 16:06:14 that didn't make sense to me right away 16:07:01 I've also reviewed a presentation where sean used similar diagrams and I think he's mental modelling in his own way (from the inside) that might be a blocker, so it might make sense to keep the idea of diagrams, but different ones 16:07:08 o/ (sorry, forgot) 16:07:17 fair 16:07:45 i guess i need to understand the issue about adding fields a little better as well 16:08:13 it should live in /doc, not /guidelines, right? 16:08:37 hmm, yeah, that makes more sense 16:09:22 i don't mind taking a whack at the first rework on that 16:10:37 #action elmiko post a pr for https://review.openstack.org/#/c/444892 16:11:13 yay! 16:11:15 we might want to engage mordred for his thoughts on the SDKs and Client Applications sections 16:11:40 i guess we can work it out through the review process though 16:12:10 * mordred has time to spend on things again! 16:12:16 \o/ 16:12:39 mordred: any suggestions you have on that pr up there are greatly appreciated =) 16:13:20 kk 16:13:31 thanks! 16:13:39 mordred++ 16:13:46 (I mean, other than my suggestions for alternate names) 16:13:56 yes, please XD 16:14:23 were those name suggestions serious, i am not in the know enough to get the references 16:14:38 i thought you /might/ be joking, but couldn't tell 16:15:05 elmiko: honestly, I'm not sure _I_ know 16:15:16 hahaha, well played sir 16:15:42 the only other action item was for edleafe, i think that was completed as well 16:16:17 #topic open mic and ongoing or new biz 16:16:25 Write something up for forum topics: 16:16:31 #link http://forumtopics.openstack.org/ 16:16:48 so, who is going to forum? 16:16:51 we don't specifically need to do anything at the forum, but if we want to, that's the place to start something 16:16:52 me 16:17:02 I'll be there 16:17:17 ahh, gotcha 16:17:18 * mordred will be there 16:17:28 i won't be there, do you folks want to host any topics? 16:17:36 We can see if there is any interest in a x-proj with SDK folks 16:17:48 ++ 16:17:49 * edleafe wants to keep trying to draw them in 16:17:51 I havea topic related to dtantsur's microversion spec - and a patch we got over in openstacksdk land ... 16:17:55 that sounds great to me edleafe 16:17:57 that's a good idea 16:18:07 * dtantsur is not going 16:18:07 (although it's slighly more specific perhaps) 16:18:27 mordred: ok, let's pick that up next 16:18:41 elmiko: sweet, thanks 16:18:59 so edleafe or cdent, does one of you want to add something for forum then? 16:19:10 or i guess talk to the sdk folks? 16:20:15 not sure. Maybe I could ping Melvin, since he was an original mover for this? 16:20:22 sounds good to me 16:21:43 #action edleafe reach out to Melvin about potential sdk cross project topic for forum 16:21:43 #action edleafe to ping Melvin Hillsman about a joint SDK/API-SIG meeting at the Forum 16:21:46 haha 16:21:52 #undo 16:21:52 Removing item from minutes: #action edleafe to ping Melvin Hillsman about a joint SDK/API-SIG meeting at the Forum 16:22:23 anything else on this before we turn the floor over to mordred ? 16:22:27 maybe if we leave two action items on edleafe, he'll double the effort? 16:22:34 * elmiko chuckles 16:22:43 dtantsur: ++ 16:23:00 alright then, the floor is yours mordred 16:23:07 dtantsur: nah, I'll just send Melvin two copies of the same email 16:23:26 lol 16:24:13 it seems in some places people have been re-using the api version setting (like OS_COMPUTE_API_VERSION) 16:24:14 to set what keystoneauth/openstacksdk consider 'default_microversion' 16:24:16 in keystoneauth we distinguish the two - api_version means major api version and microversion/default_microversion means microversion 16:24:18 so on the one hand I'd sort of prefer to _not_ take OS_COMPUTE_API_VERSION and have it set a default microversion 16:24:20 but on the other hand it's easy enough to say "if '.' in OS_COMPUTE_API_VERSION: default_microversion=OS_COMPUTE_API_VERSION" 16:24:34 what do people think the right thing to do is? 16:24:53 is it about CLI or SDK? 16:25:07 I'm pretty sure we do OS_BAREMETAL_API_VERSION in CLI (but not in the SDK) 16:25:09 dtantsur: same config source - so it needs to behave the same in both 16:25:38 I may not understand what you mean by "same config source" 16:25:53 maybe because I don't know openstacksdk 16:25:55 well, a human can have baremetal_api_version set in clouds.yaml 16:25:59 i kinda like not using OS_COMPUTE_API_VERSION as the default, but if this is easier for actual users then maybe we should consider the other 16:26:03 and that will get used by openstacksdk and by osc 16:26:14 right 16:26:32 so again, what's the problem? you don't want people to use it for <...>? 16:26:37 well, more specifically, it'll be used by os_client_config/openstack.config to create the keystoneauth adapters in question 16:26:50 dtantsur: the main issue is that currently the behavior is undefined 16:27:10 people using python-*client have one behavior expectation that we *can* choose to behave the same as 16:27:35 or we could say "f you want to configure a default microversion, use OS_BAREMETAL_DEFAULT_MICROVERSION / baremetal_default_microversion 16:27:52 omg 16:27:55 it's really a question of what to do if someone sets OS_COMPUTE_API_VERSION=2.45 16:28:10 this is the microversion (and that's what we do in ironic's OSC plugin btw) 16:28:26 people will rightfully hate us for too many options doing seemingly the same thing 16:28:38 dtantsur: ++ 16:28:43 especially, if the major version configuration will differ from major version of a microversion (what am I saying?) 16:28:47 yeah, agreed dtantsur 16:28:50 dtantsur: ok. so you're in favor of feeding 2.45 into default_microversion if we find a versoin of such a form 16:28:59 mordred: very strongly in favor, yes 16:29:16 kk 16:29:32 sweet 16:29:41 it would be a different story if we did not include a major version in a microversion :D 16:29:43 anything more on this, like do we need a guideline? 16:30:04 elmiko: since we already have one guideline proposed targeting SDKs, why not have moar? 16:30:33 _maybe_ we need to say something in dtantsur's guideline about how to deal with api_version env/config as it relates to the options? 16:30:34 i was just curious if we need a new doc, or can we add this on to the microversion stuff that currently exists? 16:30:43 If there's documentation for clouds.yaml I don't think we should duplicate that 16:30:47 yeah, mordred, that's kinda what i was wondering 16:30:57 mordred: sure, but maybe as a follow-up (simply not to unfreeze it just for it) 16:31:06 dtantsur: ++ 16:31:09 ++ 16:31:22 dtantsur: although I *was* going to quibble about the example parameter names ... 16:31:25 so, that last question, who wants to write that follow up? 16:31:32 but I thinkn that can also go into a followup 16:31:39 since they're just examples 16:31:44 mordred: this is going to be a fun conversation ;) 16:31:48 lol 16:31:49 dtantsur: :) 16:32:00 elmiko: sounds like mordred just volunteered :) 16:32:07 dtantsur: mainly just we already have parameter names in openstacksdk/keystoneauth and they are not what is used in the examples 16:32:07 \o/ 16:32:13 elmiko: yah. I can do the followup(s) 16:32:18 thanks mordred ! 16:32:22 cool 16:32:41 #action mordred right followup guidance of microversions in default config values 16:32:48 does that make sense? 16:32:57 oh wait 16:32:59 #undo 16:33:00 Removing item from minutes: #action mordred right followup guidance of microversions in default config values 16:33:10 #action mordred write followup guidance of microversions in default config values 16:33:13 hehe 16:33:15 hahaha 16:33:31 *now* does it make sense? 16:33:35 right wasn't right 16:33:39 lol 16:33:43 hehe 16:33:58 cut me some slack, i'm going on pto in 30 minutes XD 16:34:28 ok, so i have a quick update re: os-api-ref and mugsie's work 16:34:56 i've been studying the options and i think i have an idea about how we can use openapi to capture our schemas, even with microversions 16:35:03 * mugsie perks up 16:35:22 i need to do a little more research, but i would like to propose a doc about this and maybe we can incorporate into the output pr for os-api-ref 16:35:44 basically, i think we can use some of the extension mechanics in openapi to give us visibility into historical microversions 16:36:17 the main openapi schema would define the current version of an api, with microversions in the extensions 16:36:30 elmiko: cool. if we can get an end game for the schema, I can look at fixing the review 16:36:53 mugsie: sweet, i will put more time into writing this up, perhaps next week or the following i will have it done 16:37:22 the net upside is the we could use current openapi tooling to process a "master" version of any api 16:37:30 that may work 16:37:42 the down side is that someone would need to make tooling that could ingest the microversions, but this won't be too bad 16:37:46 though I'm not sure if the extensions can express e.g. a field changing its type and semantics 16:37:48 and might help Gilles situation as well 16:37:53 (think, server's flavor) 16:38:08 dtantsur: i _think_ it can, but i am not quite done with my investigation yet 16:38:42 basically, i'm pretty sure there is a way to capture entire path object trees and that would go a long way to helping with big changes 16:39:06 we could then use definitions and extension mechanics to carry other bits as needed 16:39:16 i will write this all up though 16:39:35 cool, elmiko++ 16:39:55 that's all from me 16:40:04 anything else for open mic? 16:40:39 #topic guidelines 16:40:47 #link https://review.openstack.org/#/q/status:open+project:openstack/api-wg,n,z 16:40:54 #link https://review.openstack.org/#/q/status:open+project:openstack/api-sig,n,z 16:41:05 I just answered dtantsur's comment on the HTTP refactor 16:41:09 so, we get to merge dtantsur's =) 16:41:14 or do we? 16:41:34 Basically, I don't know enough about Sphinx to get any fancier than it currently is 16:42:03 edleafe: I can help you with sphinx-foo, but I'm out till Tue 16:42:10 dtantsur, do you want to take a shot at prettyfying it ? 16:42:18 elmiko: totally, but see ^^^ 16:42:21 yup 16:42:25 dtantsur: that's ok, I guess it's time I learned 16:42:34 :) 16:42:40 #action dtantsur help to make https://review.openstack.org/#/c/554234/ purty 16:42:46 purrrr 16:42:50 hehe =) 16:42:59 let me take first crack at it 16:43:14 and i'm guessing we are merging https://review.openstack.org/#/c/532814/ ? 16:43:25 edleafe you wanna take the honors on that 16:43:31 sure! 16:43:41 +W'd 16:44:02 i guess we can address Akihiro's issues on a followup, but he didn't -1 16:44:05 \o/ 16:44:21 yeah, when people +1 I assume they're fine 16:44:28 my two proposals look like they need some review 16:44:41 follow-ups are always good 16:44:42 yeah, and there is still the larger question on https://review.openstack.org/#/c/554921/ 16:44:52 like, do we want type in there 16:45:10 originally i liked your proposal cdent, but after you made me think about it more i am not so sure 16:45:36 Yeah, I wanted to make people think 16:45:48 however, if mordred is still around he probably has a strong opinion 16:46:18 my only objection would be if there were ever a situation where 2 different named services could fill the same type, then the errors might not be as specific as necessary 16:46:25 but that might be over paranoid on my part 16:46:48 thei idea is that that's not suposed to happen 16:46:49 cdent: Perhaps a bit meatier commit message would help others understand your thinking 16:46:55 cdent: I alwayshave a strong opinion 16:47:20 edleafe: I was trying to leave it open for the sake of people finding their own way 16:47:22 mordred: wow, you're fast 16:47:24 cdent: yes to service-typeplease, if that's the quesiton 16:47:31 mordred: yes 16:47:49 cdent: you realize that most people will just get lost :) 16:48:15 I guess I thought people would read the bug 16:48:19 if two differently named services fill the same type and do not return the same named errors for error conditions, then something is horribly broken 16:48:21 * cdent is ever in hope 16:48:33 as users of the service would have no way of knowing how to deal with the api 16:49:26 that makes some sense to me mordred, i was trying to think of weird scenarios where type might not be sufficient 16:49:40 but maybe those scenarios don't really make sense 16:49:51 elmiko: they probalby exist - but are all evil :) 16:49:57 hahaha, fair 16:50:13 I'm with mordred on this one 16:50:16 I knew mordred would stand for this one 16:50:22 ok, cool 16:50:33 10 minutes left, anything else on the guidelines? 16:51:04 not from me 16:51:07 #topic bug review 16:51:13 #link https://bugs.launchpad.net/openstack-api-wg/+bugs?orderby=-id&start=0 16:51:20 #link https://bugs.launchpad.net/openstack-api-sig/+bugs?orderby=-id&start=0 16:51:43 don't think there is anything new here 16:51:46 nope 16:52:11 seems like we should mark this up though, https://bugs.launchpad.net/openstack-api-wg/+bug/1756464 16:52:13 Launchpad bug 1756464 in openstack-api-sig "Errors guidelines reference service name, should be type" [Undecided,New] 16:52:17 if everyone agrees it is a bug 16:52:38 seems so 16:52:42 +1 16:53:05 ok, updated 16:53:06 our hookup for autoginning the hookup with patches doesn't seem reliable 16:54:22 if you say so 16:54:39 it took me like 4 reads to get that 16:54:41 hehe 16:54:54 #topic weekly newsletter 16:54:54 i'm well past the number of hours and brains I should have used this week 16:55:02 LOL, inorite? 16:55:08 #link https://etherpad.openstack.org/p/api-sig-newsletter 16:55:20 as noted earlier i am going on pto shortly, any volunteers? 16:55:37 * cdent taps foot 16:55:38 oh fine 16:55:41 :) 16:55:41 hahaha 16:55:51 thanks cdent 16:55:57 you going away, or just off? 16:56:09 just off, wife and i are spending some quality time around town 16:56:17 noice 16:56:21 very nice 16:56:21 =) 16:56:34 hope y'all have a nice weekend as well! 16:56:49 #endmeeting