*** salv-orl_ has joined #openstack-sdks | 00:01 | |
*** outofmemory is now known as reedip | 00:04 | |
*** salv-orlando has quit IRC | 00:04 | |
*** salv-orl_ has quit IRC | 00:04 | |
*** gildub has joined #openstack-sdks | 00:21 | |
*** Qiming has quit IRC | 00:35 | |
*** agentle has joined #openstack-sdks | 00:36 | |
*** agentle has quit IRC | 00:40 | |
*** eliqiao has quit IRC | 00:42 | |
*** eliqiao has joined #openstack-sdks | 00:43 | |
*** dims has joined #openstack-sdks | 00:57 | |
*** Qiming has joined #openstack-sdks | 01:10 | |
*** salv-orlando has joined #openstack-sdks | 01:10 | |
*** thrash is now known as thrash|pt0 | 01:13 | |
openstackgerrit | Qiming Teng proposed openstack/python-openstacksdk: Cluster user guide - part 2 https://review.openstack.org/289761 | 01:17 |
---|---|---|
*** sigmavirus24_awa is now known as sigmavirus24 | 01:21 | |
*** sigmavirus24 is now known as sigmavirus24_awa | 01:22 | |
*** salv-orlando has quit IRC | 01:26 | |
*** salv-orlando has joined #openstack-sdks | 01:28 | |
*** salv-orlando has quit IRC | 01:43 | |
*** lucas-dinner has quit IRC | 01:55 | |
openstackgerrit | Reedip proposed openstack/python-openstackclient: Add Subnet add/remove support to router https://review.openstack.org/289716 | 01:55 |
*** lucasagomes has joined #openstack-sdks | 02:00 | |
openstackgerrit | Tang Chen proposed openstack/python-openstackclient: Use assert_called_once_with() instead of assert_called_with() https://review.openstack.org/294893 | 02:11 |
*** knikolla has quit IRC | 02:15 | |
*** dims has quit IRC | 02:28 | |
openstackgerrit | Reedip proposed openstack/python-openstackclient: Subnet: Add "subnet set" command using SDK https://review.openstack.org/281129 | 02:29 |
*** salv-orlando has joined #openstack-sdks | 02:39 | |
*** gouthamr has quit IRC | 02:44 | |
openstackgerrit | Reedip proposed openstack/python-openstackclient: Add external network options to osc network create https://review.openstack.org/292234 | 02:45 |
openstackgerrit | Reedip proposed openstack/python-openstackclient: Subnet: Add "subnet set" command using SDK https://review.openstack.org/281129 | 02:46 |
*** salv-orlando has quit IRC | 02:50 | |
*** lhcheng has quit IRC | 02:57 | |
*** salv-orlando has joined #openstack-sdks | 03:07 | |
*** lhcheng has joined #openstack-sdks | 03:14 | |
*** salv-orlando has quit IRC | 03:24 | |
*** chlong|wfh has quit IRC | 04:12 | |
openstackgerrit | Reedip proposed openstack/python-openstackclient: Add additional options to osc network create https://review.openstack.org/294422 | 04:21 |
openstackgerrit | Reedip proposed openstack/python-openstackclient: Add external network options to osc network create https://review.openstack.org/292234 | 04:21 |
*** lhcheng has quit IRC | 04:22 | |
*** salv-orlando has joined #openstack-sdks | 04:23 | |
*** chlong has joined #openstack-sdks | 04:25 | |
openstackgerrit | Reedip proposed openstack/python-openstackclient: Add external network options to osc network create https://review.openstack.org/292234 | 04:29 |
*** salv-orlando has quit IRC | 04:30 | |
*** salv-orlando has joined #openstack-sdks | 04:32 | |
reedip | tangchen: ping | 04:34 |
openstackgerrit | Reedip proposed openstack/python-openstackclient: Add additional options to osc network create https://review.openstack.org/294422 | 04:36 |
*** salv-orlando has quit IRC | 04:52 | |
*** salv-orlando has joined #openstack-sdks | 04:59 | |
*** salv-orl_ has joined #openstack-sdks | 05:04 | |
*** salv-orl_ has quit IRC | 05:06 | |
*** salv-orlando has quit IRC | 05:09 | |
openstackgerrit | Reedip proposed openstack/python-openstackclient: Subnet: Add "subnet set" command using SDK https://review.openstack.org/281129 | 05:11 |
*** lhcheng has joined #openstack-sdks | 05:30 | |
*** lhcheng_ has joined #openstack-sdks | 05:31 | |
*** lhcheng has quit IRC | 05:34 | |
*** ankit_ag has joined #openstack-sdks | 06:07 | |
*** salv-orlando has joined #openstack-sdks | 06:07 | |
*** salv-orlando has quit IRC | 06:24 | |
*** salv-orlando has joined #openstack-sdks | 06:35 | |
*** lhcheng_ has quit IRC | 06:39 | |
*** lhcheng has joined #openstack-sdks | 06:39 | |
*** salv-orlando has quit IRC | 06:41 | |
*** gildub has quit IRC | 06:54 | |
*** lhcheng has quit IRC | 06:54 | |
ankit_ag | Hi all, where can I find the current PTL name for OpenStack SDK project? | 06:59 |
*** yanyanhu has joined #openstack-sdks | 07:16 | |
*** salv-orlando has joined #openstack-sdks | 07:46 | |
*** salv-orlando has quit IRC | 07:48 | |
*** salv-orlando has joined #openstack-sdks | 07:53 | |
*** salv-orlando has quit IRC | 07:59 | |
*** salv-orlando has joined #openstack-sdks | 08:03 | |
openstackgerrit | Sheel Rana proposed openstack/python-openstackclient: Support for volume service list/enable/disable https://review.openstack.org/295660 | 08:10 |
*** salv-orlando has quit IRC | 08:14 | |
*** salv-orlando has joined #openstack-sdks | 08:16 | |
*** markvoelker has quit IRC | 08:16 | |
*** salv-orlando has quit IRC | 08:25 | |
*** openstackgerrit has quit IRC | 08:33 | |
*** openstackgerrit has joined #openstack-sdks | 08:34 | |
*** Qiming has quit IRC | 08:44 | |
*** Qiming has joined #openstack-sdks | 08:49 | |
*** _RuiChen has quit IRC | 08:53 | |
*** fzdarsky has joined #openstack-sdks | 08:53 | |
*** reedip is now known as reedip_away | 08:58 | |
*** RuiChen has joined #openstack-sdks | 09:01 | |
*** markvoelker has joined #openstack-sdks | 09:17 | |
openstackgerrit | Sheel Rana proposed openstack/python-openstackclient: Support for volume service list/enable/disable https://review.openstack.org/295660 | 09:19 |
*** salv-orlando has joined #openstack-sdks | 09:22 | |
*** e0ne has joined #openstack-sdks | 09:22 | |
*** salv-orlando has quit IRC | 09:39 | |
*** Qiming has quit IRC | 09:42 | |
*** sdague has joined #openstack-sdks | 09:44 | |
*** dims has joined #openstack-sdks | 09:51 | |
*** markvoelker has quit IRC | 09:52 | |
*** gildub has joined #openstack-sdks | 09:52 | |
*** dims has quit IRC | 10:04 | |
*** dims has joined #openstack-sdks | 10:12 | |
*** yanyanhu has quit IRC | 10:14 | |
*** cdent has joined #openstack-sdks | 10:28 | |
*** salv-orlando has joined #openstack-sdks | 10:33 | |
*** yanyanhu has joined #openstack-sdks | 10:48 | |
*** yanyanhu has quit IRC | 10:53 | |
*** Qiming has joined #openstack-sdks | 11:10 | |
*** gildub has quit IRC | 11:15 | |
briancurtin | ankit_ag: it's not an "official" project so there's no official PTL. what do you need that for? | 11:23 |
*** cdent has quit IRC | 11:31 | |
*** rtheis has joined #openstack-sdks | 11:38 | |
*** fzdarsky is now known as fzdarsky|lunch | 11:48 | |
*** markvoelker has joined #openstack-sdks | 11:48 | |
*** cdent has joined #openstack-sdks | 11:58 | |
*** salv-orl_ has joined #openstack-sdks | 12:01 | |
*** salv-orlando has quit IRC | 12:05 | |
ankit_ag | briancurtin: thanks for the information | 12:06 |
ankit_ag | briancurtin: I was looking someone responsible for approval of openstack-sdk blueprints | 12:06 |
briancurtin | ankit_ag: we don’t use blueprints | 12:07 |
ankit_ag | currently I am working on https://blueprints.launchpad.net/python-openstacksdk/+spec/return-request-id-to-caller | 12:07 |
ankit_ag | briancurtin: in that case how should we process to implement a new feature | 12:07 |
briancurtin | ankit_ag: you just write the code and then we review it, or perhaps submit a bug report on launchpad | 12:08 |
ankit_ag | briancurtin: Thank you :) | 12:08 |
briancurtin | ankit_ag: however, one thing to be aware of, i’m about to push a review that is effectively a ground-up rewrite of the Resource class, so anything you’d be doing to solve this problem will need to wait for that to be done | 12:09 |
briancurtin | ankit_ag: however, if there’s just a request-id header coming back, the way to solve that shouldnt be too hard | 12:10 |
ankit_ag | briancurtin: Yes I am going to append request-id in the response object itself so it will not impact any existing functionality | 12:11 |
ankit_ag | briancurtin: does the Resource class cleanup task requires my current patches to be hold which I have submitted to fix image member and tag APIs ? | 12:13 |
briancurtin | ankit_ag: no, those image ones are ok as they are. i can take a look at them today - i think i mostly finished them up | 12:14 |
ankit_ag | briancurtin: Yes please. Thank you ! | 12:14 |
*** purplerbot has quit IRC | 12:15 | |
*** purplerbot has joined #openstack-sdks | 12:15 | |
*** purplerbot has quit IRC | 12:15 | |
*** purplerbot has joined #openstack-sdks | 12:16 | |
*** fzdarsky|lunch is now known as fzdarsky | 12:18 | |
*** fzdarsky is now known as fzdarsky|afk | 12:18 | |
*** markvoelker has quit IRC | 12:21 | |
*** annegentle has joined #openstack-sdks | 12:31 | |
*** markvoelker has joined #openstack-sdks | 12:47 | |
openstackgerrit | jichenjc proposed openstack/python-openstackclient: [compute] Add virtual interface list command https://review.openstack.org/283834 | 12:59 |
*** dims_ has joined #openstack-sdks | 13:02 | |
*** dims has quit IRC | 13:02 | |
*** lucasagomes is now known as lucas-hungry | 13:07 | |
sheel | Hello All, stevemar, dtroyer, rtheis, tangchen , | 13:19 |
sheel | kindly find some spare time to review | 13:19 |
sheel | https://review.openstack.org/#/c/295660/ and | 13:19 |
sheel | https://review.openstack.org/#/c/293661/ | 13:19 |
*** fzdarsky|afk is now known as fzdarsky | 13:21 | |
*** reedip__ has joined #openstack-sdks | 13:22 | |
*** knikolla has joined #openstack-sdks | 13:22 | |
*** gouthamr has joined #openstack-sdks | 13:23 | |
sdague | cdent: do you have a library pulled together for the parsing code for the new microversion header extraction? | 13:32 |
cdent | sdague: one sec | 13:32 |
*** erlon has joined #openstack-sdks | 13:34 | |
*** markvoelker_ has joined #openstack-sdks | 13:34 | |
cdent | this is as far as I've gotten, not library-ized yet: https://tank.peermore.com/_/22ab9236-d0e1-49e4-8b31-8d0feece691d | 13:35 |
*** markvoelker has quit IRC | 13:36 | |
sdague | cdent: ok, so after playing with the parsing in tree, I think we need a dedicated library here otherwise it's going to be frought with errors | 13:36 |
sdague | so as soon as you publish something there, I'll do the plugging into Nova of the header | 13:36 |
sdague | but I'll wait on you for that | 13:37 |
cdent | sdague: that's part of https://github.com/jaypipes/enamel/blob/master/enamel/api/version.py | 13:37 |
cdent | there are tests nearby | 13:37 |
cdent | i agree that a library of some kind is a good idea | 13:38 |
*** markvoelker has joined #openstack-sdks | 13:38 | |
cdent | the problem with the above is that it is somewhat flask oriented | 13:38 |
cdent | I would guess that it ought to be possible to figure out a way to get it into something like oslo middleware | 13:39 |
*** ankit_ag has quit IRC | 13:40 | |
sdague | honestly, I would just cut a dedicated library for this | 13:40 |
*** markvoelker_ has quit IRC | 13:40 | |
cdent | i'll inquire with the oslo folks | 13:41 |
cdent | dedicated is my preference | 13:41 |
*** RuiChen has quit IRC | 13:41 | |
cdent | but people seem to get ... fussy about more stuff | 13:41 |
cdent | sdague: I seem to recall that ironic wrote a new processor for microversions that does both forms. | 13:43 |
*** RuiChen has joined #openstack-sdks | 13:43 | |
sdague | cdent: honestly, I don't even care if it's in oslo, just a library out there somewhere | 13:43 |
dims_ | ++ sdague | 13:43 |
cdent | it's not something that makes any sense for anything else | 13:44 |
cdent | I wouldn't want to encourage microversion header handling in the world outside of openstack as it is an incorrect way to do versioning | 13:44 |
cdent | within openstack it is what we're stuck with so an openstack library makes sense... | 13:44 |
dims_ | cdent : we can ask for a git repo in openstack/ git itself and develop a library - http://docs.openstack.org/infra/manual/creators.html | 13:45 |
* cdent nods | 13:45 | |
dims_ | cdent : does not have to be under oslo umbrella | 13:45 |
cdent | what, then, does oslo end up meaning? | 13:46 |
*** terrylhowe has joined #openstack-sdks | 13:46 | |
*** terrylhowe has left #openstack-sdks | 13:47 | |
dims_ | cdent : we can talk in the next weekly meeting if there's interest in oslo cores for a new library. just pointing out that it does not need to be under oslo | 13:48 |
* cdent nods | 13:48 | |
dims_ | cdent : as long as you have some interested folks to be the cores for the new library you are good | 13:48 |
cdent | I was mostly just being curious. I've never quite really understood the definition of "oslo" | 13:48 |
reedip__ | rtheis: ping | 13:49 |
rtheis | reedip__: hi | 13:49 |
reedip__ | rtheis: Good morning, I have just one query | 13:49 |
reedip__ | Are we targetting Patch : https://review.openstack.org/#/c/289716/ After mitaka? | 13:50 |
dims_ | cdent : primary mission was to get rid of shared code into libraries. (oslo-incubator -> new libraries), then we started new libraries like debtcollector etc. but it's equally valid to start new libraries outside now that we have the big tent. | 13:50 |
reedip__ | Sorry, got my answer... | 13:50 |
reedip__ | rthies: I was confused with another patch... :) | 13:50 |
rtheis | reedip__: ok, no problem | 13:51 |
rtheis | reedip__: I wasn't sure if we should update requirements at this point in the release for a new function. | 13:51 |
dims_ | cdent : one project that was started outside of oslo (osprofiler) did end up in oslo as well. depends on interest amongst oslo cores, how pervasively it's used etc. | 13:51 |
cdent | thanks dims_ | 13:52 |
reedip__ | rtheis: I guess we should delay it after mitaka | 13:52 |
reedip__ | rtheis: avoid any last minute issues seeping in... | 13:52 |
rtheis | yes, that may be best | 13:52 |
briancurtin | ankit_ag: no, those image ones are ok as they are. i can take a look at them today - i think i mostly finished them up | 13:52 |
dims_ | cdent : we'd be very happy to have new ideas, people. we do come with baggage :) (backwards compat etc) | 13:53 |
reedip__ | rtheis: agreed .... | 13:54 |
sheel | rtheis: hey | 13:59 |
rtheis | sheel: hi | 13:59 |
sheel | rtheis: was looking for some info | 14:00 |
sheel | rtheis: are we done with mitaka or still accepting new patches? | 14:00 |
cdent | etoews, elmiko, sdague: my last comment here is something we're going to have to address api-wise, eventually: https://review.openstack.org/#/c/281511/ | 14:00 |
rtheis | sheel: you'll have to ask dtroyer about release plans for mitaka | 14:01 |
*** terrylhowe_ has joined #openstack-sdks | 14:01 | |
*** terrylhowe_ has left #openstack-sdks | 14:02 | |
sheel | rtheis: ok, sure | 14:02 |
sdague | cdent: the etags issue, sure | 14:02 |
sheel | rtheis: thanks | 14:02 |
rtheis | yw | 14:02 |
sdague | cdent: but it also is going to need code examples | 14:02 |
* cdent nods | 14:03 | |
* cdent has a backlog | 14:03 | |
sheel | dtroyer: hi, are you around | 14:04 |
sdague | and needs implementation in the clients the servers are cross communicating iwht | 14:05 |
*** sigmavirus24_awa is now known as sigmavirus24 | 14:05 | |
cdent | yes, no doubt it will be a pile of work | 14:05 |
sdague | which makes me a bit concerned about pushing a spec that says 'do it this way, which requires this other thing, that nothing does' | 14:05 |
cdent | sdague: there's no spec yet | 14:06 |
cdent | and thus far most of openstack fails the lost update check, but it is still working | 14:06 |
*** singhj has joined #openstack-sdks | 14:06 | |
cdent | but nothing is helped by not acknowledging the presence of the problem | 14:07 |
sdague | cdent: sure | 14:07 |
sdague | just it's a guideline to tell people to do it this way | 14:07 |
elmiko | cdent: good points | 14:07 |
sdague | but if they do, and don't address the other thing, then it means that people are going to hit real issues | 14:08 |
sdague | I also get a little twitchy about guidelines that end up being "the client needs a bunch more logic" | 14:08 |
cdent | sdague: that's the way the web works | 14:08 |
elmiko | sdague: also good points | 14:08 |
cdent | you can't avoid this problem without smarter clients | 14:08 |
cdent | however, the problem is actually quite rare | 14:08 |
elmiko | seems like the etags guideline should be added soon(TM) | 14:09 |
* cdent _wants_ people to hit issues because bugs the lubricant of progress and engagement | 14:09 | |
*** bryan_att has joined #openstack-sdks | 14:09 | |
dtroyer | cdent: (cathcing up a bit) is that microversion lib intended for server or client-side use? or both? | 14:13 |
dtroyer | sheel: we cut our Mitaka-equivalent release a couple of weeks ago, 2.2.0 is stable/mitaka branch. | 14:14 |
cdent | dtroyer: server, initially | 14:15 |
sheel | dtroyer: thanks for information | 14:15 |
dtroyer | cdent: ok. Most of Oslo is written with server-side assumptions (dependencies mostly) in mind making it hard to use in clients also | 14:15 |
sheel | dtroyer: so when are we planning to open up with newton? | 14:16 |
dtroyer | sheel: that is what master is. We don't do the integrated release cycle, we just do periodic releases. Since some things really want someting pinned to the integrated release, we pick the last one when the libs freeze and call it that. | 14:16 |
sheel | dtroyer: ok | 14:17 |
sheel | dtroyer: so we are open for new patches now. | 14:17 |
sheel | dtroyer: thanks for update | 14:18 |
dtroyer | there should be no reason to need to go backward in time to use a current OSC (or any client really) with any of the supported OpenStack releases. if there it, it's a bug. | 14:18 |
sdague | dtroyer: this is really a header parser for a particular header in question that gets complicated to parse correctly | 14:18 |
dtroyer | that of course ignores issues with Python dependencies when installing in the same space as an old server, say | 14:18 |
sdague | there aren't client side implications for this I don't think | 14:18 |
dtroyer | sdague: ok, cool. I just like to keep an eye on things that jump into oslo then want to be used in clients… those assumptions hurt sometimes | 14:19 |
*** dims_ has quit IRC | 14:19 | |
sdague | yep | 14:19 |
sdague | this should litterally have no dependencies | 14:19 |
sdague | it's a parsing library | 14:19 |
*** lucas-hungry is now known as lucasagomes | 14:21 | |
cdent | sdague: I'm only just now seeing your comment on the delete etags guideline | 14:28 |
cdent | s/etags/metadata/ | 14:28 |
cdent | Are you suggesting that everywhere we indicate the PUT is used we need to now go back and mention etags. The problem is by no means specific to this new guideline | 14:29 |
cdent | it is everywhere the is a PUT | 14:29 |
cdent | s/the/there/ | 14:29 |
sdague | cdent: I think we should figure out if anything is doing the right thing today before telling everyone to build delete calls this way | 14:33 |
cdent | sdague: it has _nothing_ to do with delete | 14:33 |
cdent | it is every single place that does a PUT | 14:33 |
*** openstackgerrit has quit IRC | 14:33 | |
sdague | cdent: ok, so I'm asking the question, what's the state of our code today | 14:33 |
*** openstackgerrit has joined #openstack-sdks | 14:34 | |
cdent | It's a good question, one we need to address | 14:34 |
cdent | thus my original comment [t 3nR9] | 14:35 |
purplerbot | <cdent> etoews, elmiko, sdague: my last comment here is something we're going to have to address api-wise, eventually: https://review.openstack.org/#/c/281511/ [2016-03-22 14:00:46] [n 3nR9] | 14:35 |
elmiko | <3 purplerbot | 14:36 |
sdague | sure, and what I'm saying is knowing the current state of actual code, like what does 'nova meta' commands actually do | 14:37 |
sdague | as I don't think osc has any of these apis plumbed | 14:37 |
cdent | sure. So far I'm just setting the bit, not trying to resolve it. | 14:38 |
*** singhj has quit IRC | 14:40 | |
sdague | right, I'm saying that before we move on with new recommendations here, we need to actually know the state of the world. | 14:40 |
*** e0ne has quit IRC | 14:41 | |
cdent | sdague: I guess my confusion stems from: how is this new recommendation any different from any of the others which have the same problem? We're not increasing the problem surface area. We already recommend that people use PUT to modify metadata (elsewhere in the same file). I agree with all the things we need to do to make this better, but I'm not clear on the timing of putting on the brakes | 14:44 |
etoews | it comes back to basic education around http apis | 14:46 |
etoews | "I hadn't come across etags" | 14:46 |
*** DuncanT has joined #openstack-sdks | 14:46 | |
etoews | we have to assume zero knowledge of http apis | 14:46 |
etoews | it would be nice to be able to recommend a short book that people can use to get up to speed if they're so inclined | 14:47 |
etoews | i feel like https://leanpub.com/restful-api-design could be that book but it's incomplete | 14:48 |
sdague | etoews: so that's fine in a greenfield world | 14:48 |
sdague | we're working with code that's deployed everywhere | 14:48 |
etoews | in this particular case "Caching - Strategies & ETags" is on the TODO list | 14:48 |
etoews | sdague: yes. and we do account for that in https://wiki.openstack.org/wiki/API_Working_Group/Current_Design | 14:49 |
DuncanT | Some Openstack API specific guidance from somebody knowledgeable would be very useful | 14:49 |
etoews | doens't mean we can't at least attempt to push forward where it makes sense to do so | 14:49 |
DuncanT | The cinder API currently has no etags support at all | 14:49 |
sdague | etoews: sure... except, there is nothing in here which then lets people know "hey, your client needs to do X otherwise you've created a data corruption issue" | 14:49 |
sdague | because we've got real clients and servers out there, and recommentations that assume they do things they don't | 14:50 |
etoews | right. assume nothing. it needs to be documented in the guidelines. | 14:50 |
sdague | so before doing more of that, at least surveying the state of the world would be good | 14:50 |
etoews | yep. that's why i encourage all guidelines to start with an addition to https://wiki.openstack.org/wiki/API_Working_Group/Current_Design | 14:51 |
etoews | push forward from a known state | 14:51 |
DuncanT | Doing some (very quick and dirty) searching, the only etags mentions I can find are for swift | 14:51 |
etoews | that's the only place i've come across them | 14:52 |
etoews | i can't recall how well they adhere to the a proper impl of etags | 14:52 |
DuncanT | Is there anybody able to provide the start of some basic advice? I just tried to start a spec for adding etag generation to cinder, and I quickly found I don't understand nearly enough about the expected behaviour | 14:53 |
cdent | DuncanT: I've put it on my todo list | 14:53 |
DuncanT | (see my latest comment on the API doc review for an example) | 14:53 |
DuncanT | cdent: Thanks | 14:53 |
cdent | I suspect its on my. I've written several apis which use etags extensively | 14:53 |
cdent | s/my/me/ | 14:53 |
DuncanT | cdent: I'll keep an eye out for it, thanks | 14:55 |
cdent | DuncanT: it may take some time depending on the extent to which it needs to be related to the current state of things in openstack, versus a description of what they are and how to use them in the general case | 14:56 |
DuncanT | cdent: A general description would be a great start, as long as it covers the case of multiple views into the same object | 14:57 |
etoews | DuncanT: if you're looking for some reading on it, http://www.amazon.com/RESTful-Web-APIs-Leonard-Richardson/dp/1449358063 covers etags and has a (brief) section on avoiding the lost update. nothing on actually generating etags though. | 14:59 |
etoews | cdent: where is this server-side microservices library? | 14:59 |
DuncanT | etoews: Cheers, I'll see if I can track down a copy | 15:00 |
cdent | etoews: it doesn't fully exist yet, but the poc is in this: https://github.com/jaypipes/enamel/blob/master/enamel/api/version.py which I'm going to try to extract to something generic | 15:00 |
cdent | etoews: i assume you meant microversions? | 15:02 |
sdague | let's also be specific about what we are talking about | 15:04 |
sdague | it's a parser for OpenStack-API-Version: compute 2.12; volume 2.1 | 15:04 |
sdague | for that one field | 15:04 |
*** singhj has joined #openstack-sdks | 15:07 | |
*** Qiming has quit IRC | 15:10 | |
cdent | sdague: you just want the parser | 15:14 |
cdent | or you want a piece of middleware that manages versioning? | 15:14 |
sdague | honestly, I just want a parser | 15:14 |
sdague | at least to start | 15:14 |
cdent | ohhhh | 15:14 |
sdague | we have all the logic on management in the applications right now | 15:14 |
sdague | but the parsing gets an order of magnitude more complex | 15:15 |
sdague | OpenStack-API-Version: compute 2.12 | 15:15 |
sdague | vs. OpenStack-Nova-API-Version: 2.12 | 15:15 |
cdent | what kind of assumptions do you want about the input: is it one folded header, multiple headers, or both? | 15:16 |
sdague | cdent: ideally both | 15:16 |
cdent | the different handing of headers by different frameworks throws a bit of a wrench | 15:17 |
sdague | in my ideal world I want this interface | 15:17 |
sdague | cdent: they don't all use webob underneath? | 15:17 |
cdent | no | 15:17 |
sdague | what doesn't? | 15:17 |
cdent | do you mean in the world of openstack, or in the world at large? | 15:18 |
sdague | get_version(webob_request, service_type='compute') | 15:18 |
sdague | cdent: I mean a) in openstack, b) in openstack that is using microversions or might soon | 15:18 |
openstackgerrit | Merged openstack/python-openstackclient: Use assert_called_once_with() instead of assert_called_with() https://review.openstack.org/294893 | 15:19 |
cdent | would get you accept: get_version(headers, service_type='compute') # where headers is type checked for list or dict? | 15:20 |
cdent | that would be considerably more flexible with regard to callers | 15:20 |
sdague | cdent: as long as there is a straight forward way to get headers as that from webob | 15:20 |
cdent | request.headers is a dict | 15:20 |
sdague | ok, then yes, that's fin | 15:20 |
cdent | cool | 15:21 |
elmiko | cdent: +1 for more generic approach | 15:21 |
sdague | I would also like get_version(headers, service_type='compute') to support the legacy headers we know exist | 15:21 |
sdague | with new headers taking preference | 15:22 |
cdent | yeah, I kinda assumed that, but what about 'nova' | 15:23 |
sdague | service_type='compute' should use OpenStack-Nova-API-Version if there is no OpenStack-API-Version declaration | 15:23 |
cdent | that embeds too much smarts | 15:23 |
cdent | how about service_types=['compute', 'nova'] ? | 15:24 |
cdent | or service_type='compute', fallback='nova' | 15:24 |
cdent | or something like that | 15:24 |
sdague | no, because that lets that be in the generic header, which we don't want to support | 15:24 |
sdague | honestly, we've got only a couple of one offs, and you've said this is an openstack specific library | 15:24 |
cdent | s/fallback/legacy/ | 15:25 |
sdague | I'm not sure why we can't just embed the legacy logic there | 15:25 |
cdent | sdague: sure but we want the problems to be visible in the caller, not the library | 15:25 |
cdent | otherwise they disappear | 15:25 |
sdague | so, for that I'd suggest a check_version(headers, service_type='compute') | 15:25 |
sdague | which returns some deeper information about things being odd | 15:26 |
sdague | or returning a warnings object with the actual version | 15:26 |
cdent | I don't mean visibility in terms of inspection | 15:26 |
cdent | I mean visibility in the code for future maintainers | 15:26 |
sdague | ok, well how about we just start with a parser for that field then, and we'll keep all the rest of the logic in the applications | 15:26 |
cdent | i'll poc something out, and we can talk about it around that | 15:26 |
sdague | yeh, if the simplest thing is done first, that's fine | 15:27 |
sdague | we can figure out who is keeping the gorp logic later | 15:27 |
*** tangchen has quit IRC | 15:38 | |
*** tangchen has joined #openstack-sdks | 15:39 | |
*** dims has joined #openstack-sdks | 15:45 | |
*** dims_ has joined #openstack-sdks | 15:55 | |
*** dims has quit IRC | 15:55 | |
*** lhcheng has joined #openstack-sdks | 16:10 | |
*** annegentle has quit IRC | 16:12 | |
sheel | dtroyer: hi | 16:13 |
sheel | dtroyer: regarding "volume set --transfer [--transfer-name <name>] <volume>" | 16:13 |
sheel | we need to show auth key and volume details once volume transfer set is completed | 16:13 |
sheel | we need command.showOne for this purpose | 16:13 |
sheel | But as we are planning to create transfer using volume set, its seems not possible as set uses command.Command. | 16:13 |
sheel | As per design it seems not feasible in current volume set command, any input on this | 16:13 |
sheel | dtroyer: should be stick to "volume transfer"? | 16:19 |
*** cdent has quit IRC | 16:21 | |
*** e0ne has joined #openstack-sdks | 16:21 | |
*** dims_ has quit IRC | 16:46 | |
*** cdent has joined #openstack-sdks | 16:48 | |
*** lucasagomes is now known as lucas-afk | 17:02 | |
*** dims has joined #openstack-sdks | 17:02 | |
*** singhj has quit IRC | 17:08 | |
*** dims has quit IRC | 17:13 | |
*** singhj has joined #openstack-sdks | 17:26 | |
*** Kiall has quit IRC | 17:31 | |
*** singhj has quit IRC | 17:31 | |
*** Kiall has joined #openstack-sdks | 17:33 | |
*** lucas-afk is now known as lucasagomes | 17:34 | |
*** singhj has joined #openstack-sdks | 17:41 | |
*** krotscheck has quit IRC | 17:43 | |
cdent | sdague, elmiko, etoews: https://github.com/cdent/microversion_parse | 17:50 |
cdent | proof of concept, ymmv, ianal, etc | 17:50 |
*** lucasagomes is now known as lucas-dinner | 17:57 | |
*** fzdarsky is now known as fzdarsky|afk | 17:57 | |
*** d0ugal has quit IRC | 17:58 | |
elmiko | cdent: neat, i'll keep this around as we start to implement microversions in sahara | 17:58 |
elmiko | that work should be underway in newton | 17:58 |
cdent | elmiko: I'm assuming we'll move some form of that under the openstack umbrella after we hash it around a bit | 17:59 |
elmiko | makes sense | 17:59 |
cdent | not much point if its not in line with requirements/expectations | 17:59 |
*** d0ugal has joined #openstack-sdks | 17:59 | |
elmiko | right | 17:59 |
cdent | but if it is, then cool | 17:59 |
*** salv-orlando has joined #openstack-sdks | 18:02 | |
*** salv-orl_ has quit IRC | 18:05 | |
*** annegentle has joined #openstack-sdks | 18:05 | |
*** fzdarsky|afk has quit IRC | 18:08 | |
*** d0ugal has quit IRC | 18:09 | |
etoews | cdent: thanks. i know the magnum folks are interested in it too. | 18:09 |
*** lhcheng has quit IRC | 18:11 | |
cdent | elmiko, etoews: if you guys have a moment to check over the tests and confirm I've got the logic right. It tries to cover quite a lot of situations. | 18:11 |
elmiko | cdent: ack | 18:13 |
*** boris-42 has joined #openstack-sdks | 18:21 | |
*** lhcheng has joined #openstack-sdks | 18:28 | |
*** sigmavirus24 is now known as sigmavirus24_awa | 18:33 | |
openstackgerrit | Merged openstack/python-openstacksdk: Fix image member apis https://review.openstack.org/291572 | 18:36 |
elmiko | cdent: lgtm, my only quibbles would be stylistic | 18:52 |
elmiko | i do have a question, | 18:52 |
elmiko | in the case of a header like "openstack-compute-api-version: 2.1, 9.2", is there a realworld case where that might happen? | 18:52 |
cdent | elmiko: after we cover the actual question I'd be curious to know the stylistic quibbles, because I tend to have a pretty intentional style | 18:55 |
cdent | if a client built a request and somehow managed to send two headers with different versions, the result would be what you quote there | 18:55 |
elmiko | ah, ok | 18:56 |
cdent | basically: if you two different parts of the code append (rather than modifying) a header, you'd get something like that | 18:56 |
elmiko | right, makes sense. i wasn't thinking about that case | 18:56 |
cdent | and it is kind of easy to imagine a layered client, or a client that was a kind of proxy | 18:56 |
elmiko | yea, exactly | 18:56 |
briancurtin | rtheis: do you have anything to meet about? | 18:59 |
rtheis | briancurtin: nothing today | 18:59 |
elmiko | as for the style quibbles, maybe i just think in a different direction with regards to things like catching an exception off a missed dictionary lookup | 18:59 |
elmiko | cdent: overall the code makes a good deal of sense | 18:59 |
briancurtin | rtheis: pretty much same. i pushed that Resource refactor and am moving on to the Proxy part of it right now, which should be a lot quicker (i already did some of it an attempt to validate the whole idea end-to-end) | 19:00 |
cdent | I'm trying to allow some, but not all, exceptions to rise to the caller, which probably causes some confusion | 19:00 |
rtheis | briancurtin: nice | 19:00 |
elmiko | cdent: no, i think that's a good thing | 19:01 |
cdent | elmiko I was afraid you were going to tell me to add a class or something, at which point I was going to cry about the overuse of OO and sulk ;) | 19:01 |
elmiko | cdent: LOL | 19:02 |
elmiko | cdent: NOT ENOUGH CLASSES. WRONGBAD! | 19:02 |
* cdent burninates | 19:02 | |
elmiko | haha | 19:02 |
elmiko | it was more like, when seeing https://github.com/cdent/microversion_parse/blob/master/microversion_parse/__init__.py#L81 | 19:03 |
elmiko | for example | 19:03 |
elmiko | i find it easier to read when i see "header = headers.get(STANDARD_HEADER); if header is None: return" | 19:03 |
cdent | that probably made more sense when that block didn't have two try statements | 19:04 |
elmiko | but, like i said, that's just an artifact of my style balance | 19:04 |
cdent | the inner one was added after I found a bug | 19:04 |
elmiko | right | 19:04 |
elmiko | it makes sense, especially to those who write a lot of python. | 19:04 |
elmiko | i tend to probably be overly verbose and explicit in the way i write code though | 19:05 |
sdague | cdent: as soon as there is some negative testing in there, I'm good with it | 19:05 |
elmiko | and the only reason i'm mentioning this is you made me! | 19:05 |
cdent | sdague: PATCHES ACCEPTED | 19:05 |
cdent | sdague: and there are some already | 19:06 |
cdent | but yes, there could be some more | 19:06 |
sdague | cdent: I told you I was waiting for you... :) | 19:07 |
sdague | actually... I have a suggestion for interface change | 19:07 |
cdent | ah, cool, yeah? | 19:08 |
sdague | def get_version(headers, service_type=None, legacy_headers=['X-OpenStack-Nova-API-Version']) | 19:08 |
sdague | so we only do the right thing with the new known headers, and you have to specifically give it old headers you will do parsing out of | 19:09 |
sdague | because https://github.com/cdent/microversion_parse/blob/master/microversion_parse/tests/test_get_version.py#L151 actually makes me nervous that that works | 19:09 |
sdague | as I can imagine stuff slipping in | 19:09 |
cdent | I got the impression from the earlier discussion that we wanted it to be fairly do-it-all-for-you? | 19:10 |
cdent | sdague: that _should_ work | 19:10 |
sdague | but I don't want it to accept invalid behavior that currently doesn't exist today | 19:10 |
sdague | cdent: no, because OpenStack-Compute-API-Version is not a thing | 19:11 |
sdague | that header has never existed in the wild | 19:11 |
sdague | I don't want to allow for it | 19:11 |
cdent | ah, I see what you mean | 19:11 |
sdague | I'd like to contain the damage, as you said | 19:11 |
cdent | well that should be relatively easy change | 19:12 |
sdague | so OpenStack-API-Version parsing for everyone, then projects have to be explicit about other headers they did support and only allow for those | 19:12 |
sdague | right | 19:12 |
cdent | i'll do that after the current run of irc meetings | 19:13 |
sdague | coolio | 19:13 |
sdague | thanks | 19:13 |
cdent | thank you | 19:13 |
cdent | sdague: I'll probably come calling your direction if I get stuck on the put-it-under-openstack stuff | 19:14 |
elmiko | sdague: +1, i like that notion | 19:16 |
*** sigmavirus24_awa is now known as sigmavirus24 | 19:44 | |
cdent | sdague: adjusted, but probably still needs more tests to satisfy your desires | 19:45 |
*** david-lyle_ has joined #openstack-sdks | 19:56 | |
*** david-lyle has quit IRC | 19:57 | |
*** salv-orlando has quit IRC | 19:58 | |
*** david-lyle_ is now known as david-lyle | 20:02 | |
*** sdague has quit IRC | 20:31 | |
*** jaypipes has quit IRC | 20:52 | |
*** e0ne has quit IRC | 20:53 | |
*** salv-orlando has joined #openstack-sdks | 20:56 | |
cdent | elmiko, etoews: I've must added you as a reviewer on https://review.openstack.org/#/c/296046/ | 20:57 |
cdent | sigh s/must/just/ | 20:57 |
*** rtheis has quit IRC | 20:57 | |
elmiko | ack, i'll take a look. but it might have to wait until after the dog walk ;) | 20:58 |
cdent | elmiko: no rush | 20:58 |
cdent | it's long past the end of my day | 20:59 |
elmiko | yeah, seriously! | 20:59 |
*** singhj_ has joined #openstack-sdks | 21:00 | |
*** singhj has quit IRC | 21:01 | |
*** singhj_ has quit IRC | 21:05 | |
*** gouthamr has quit IRC | 21:11 | |
*** dims has joined #openstack-sdks | 21:11 | |
*** singhj has joined #openstack-sdks | 21:14 | |
*** singhj has quit IRC | 21:18 | |
*** singhj has joined #openstack-sdks | 21:23 | |
*** cdent has left #openstack-sdks | 21:27 | |
*** singhj has quit IRC | 21:32 | |
*** gouthamr has joined #openstack-sdks | 21:47 | |
*** openstackgerrit has quit IRC | 21:48 | |
*** openstackgerrit has joined #openstack-sdks | 21:49 | |
*** e0ne has joined #openstack-sdks | 21:50 | |
*** sigmavirus24 is now known as sigmavirus24_awa | 22:02 | |
*** annegentle has quit IRC | 22:08 | |
*** annegentle has joined #openstack-sdks | 22:17 | |
*** e0ne has quit IRC | 22:21 | |
reedip__ | RuiChen: ping ? | 22:34 |
*** gouthamr_ has joined #openstack-sdks | 22:34 | |
reedip__ | tangchen: ping | 22:35 |
*** gouthamr has quit IRC | 22:37 | |
*** gildub has joined #openstack-sdks | 22:38 | |
*** annegentle has quit IRC | 22:38 | |
*** knikolla has quit IRC | 22:49 | |
*** annegentle has joined #openstack-sdks | 22:59 | |
*** annegentle has quit IRC | 23:04 | |
*** annegentle has joined #openstack-sdks | 23:09 | |
*** annegentle has quit IRC | 23:10 | |
*** dims_ has joined #openstack-sdks | 23:12 | |
*** dims has quit IRC | 23:15 | |
*** dims has joined #openstack-sdks | 23:15 | |
*** dims_ has quit IRC | 23:18 | |
*** dims_ has joined #openstack-sdks | 23:19 | |
*** dims has quit IRC | 23:22 | |
*** dims has joined #openstack-sdks | 23:23 | |
*** dims_ has quit IRC | 23:25 | |
*** Qiming has joined #openstack-sdks | 23:26 | |
*** lhcheng has quit IRC | 23:31 | |
*** lhcheng has joined #openstack-sdks | 23:32 | |
*** lhcheng has quit IRC | 23:32 | |
*** lhcheng has joined #openstack-sdks | 23:33 | |
*** knikolla has joined #openstack-sdks | 23:39 | |
*** markvoelker has quit IRC | 23:44 | |
*** markvoelker has joined #openstack-sdks | 23:47 |
Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!