19:00:45 #startmeeting marconi 19:00:46 Meeting started Thu May 16 19:00:45 2013 UTC. The chair is flaper87. Information about MeetBot at http://wiki.debian.org/MeetBot. 19:00:47 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 19:00:49 The meeting name has been set to 'marconi' 19:00:54 w0000000t 19:01:01 marconi folks around? 19:01:08 yes Sir 19:01:22 * flaper87 wonders what's alessio's nick 19:01:35 Hi! It's Alessio! 19:01:41 aababilov: there you are 19:01:49 si! :) 19:02:04 soooo, it looks like it'll be the three of us today 19:02:06 https://wiki.openstack.org/wiki/Meetings/Marconi 19:02:14 that's the schedule for today 19:02:29 before we get there, is there anything we should know share or something? 19:03:00 kk 19:03:10 #topic blueprints 19:03:15 #link https://blueprints.launchpad.net/marconi 19:03:42 I know last week you guys went through the blueprints, I think we should do that again today and see which of those are really esential 19:03:54 kk 19:04:09 so, we've got the base blueprints for transports and sotrages which are obviously essential 19:04:15 I guess we can move grizzly-debt down a notch 19:04:25 (or two) 19:04:27 and we've also got the transport wsgi and mongodb that are essential as well 19:04:29 kgriffs: +1 19:04:47 #link https://blueprints.launchpad.net/marconi/+spec/grizzly-debt 19:04:50 kgriffs: done 19:05:15 #agreed setting grizzly-dept to medium 19:05:34 #link https://blueprints.launchpad.net/marconi/+spec/config-module 19:05:47 I think this one is ready 19:06:02 what do you guys think? 19:06:23 yeah, it's been stable for a while now 19:06:41 cool, so, I guess we should set it as implemented 19:06:42 BTW, I'm thinking to move grizzly-debt to H2 19:06:55 kgriffs: makes sense 19:07:02 * kgriffs does that 19:07:10 kgriffs: what about adding work items to it? 19:07:20 like Pay dept on transport 19:07:24 Pay debt on storage 19:07:26 and so on 19:07:39 so we can have a single blueprint and a more organized tasks for that BP 19:07:58 I like that idea. We haven't been using that feature yet. 19:08:00 +1 19:09:01 +1 19:09:26 cool 19:09:28 I really wondered what exactly means " fix all the broken windows" 19:09:44 #agreed add work items to grizzly-dept 19:09:46 do we have appropriate FIXMEs? 19:10:01 * flaper87 set grizzly-debt as implemented by mistake. 19:10:05 I put it back as started 19:10:32 * kgriffs seeded with a few work items 19:10:44 awesome 19:10:53 ok, 'cause now I see just one FIXME and 7 TODOs 19:11:05 so, I think essential blueprints are set 19:11:20 aababilov: mmh, perhaps your seeing bugs instead of blueprints ? 19:11:27 aababilov: https://blueprints.launchpad.net/marconi 19:12:00 no, I definitely look at https://blueprints.launchpad.net/marconi/+spec/grizzly-debt 19:12:03 we have qa-clusters set for havana-1 and marked as High 19:12:27 aababilov: ah sorry, I misunderstood 19:12:30 we need those set up for the performance testing 19:12:45 malini: does that have to happen for H-1 ? 19:13:04 H-1 ends by the end of this month, AFAIK 19:13:16 we've to push that back 19:13:31 right, H1 ends on 30th 19:13:53 ok..we might take longer to get the salt scripts etc. done for tht 19:14:10 ok, pushed it back to H-2 19:14:15 we'll revisit it later 19:14:17 there is no ref to Gerrit on https://blueprints.launchpad.net/marconi/+spec/qa-cluster but progress is good 19:14:53 FYI, this is the list of H-1 bps https://launchpad.net/marconi/+milestone/havana-1 19:14:55 aababilov: gooood point 19:14:55 https://review.openstack.org/: Service Temporarily Unavailable 19:15:08 flaper87: oz_akan is working on that, may have it done in a week or two 19:15:19 tht one is just setting up the servers etc. So do you expect anything in gerrit for tht ? 19:15:21 kgriffs: qa-clusters you mean? 19:15:46 right 19:15:58 right, I see him there, so, I guess we better wait for his update 19:16:21 oz_akan said he couldn't make it to the meeting, will email an update 19:16:41 sounds good 19:16:48 next: https://blueprints.launchpad.net/marconi/+spec/service-hooks 19:17:00 I think we can keep it in h1 for now - malini do you know if he still plans on finishing this in the next week or two? 19:17:26 he has plans to finish it soon 19:17:34 excellent 19:17:47 #action oz_akan to send update about the progress on qa-cluster 19:17:50 :D 19:17:54 flaper87: re service-hooks I bumped up that priority because it's required to implement input validation 19:18:24 but we can postpone to h2. Methinks fixing bugs and closing functionality gaps is more important 19:18:41 kgriffs: +1 19:18:42 (i.e., postpone both service-hooks and input-validation) 19:19:05 ok, doing it now if there are no objections 19:19:59 #info launchpad is REALLY STUPID pushes back a parent and not its dependency (not even a small note) 19:20:32 next 19:20:37 I guess the same applies for this one https://blueprints.launchpad.net/marconi/+spec/message-pagination 19:21:24 what is the pagination model? 19:21:40 what has client to specify: the market or the offset? 19:22:02 markeR 19:22:08 aababilov: the idea is to have a way to paginate messages and queues through the API but it has to be fast and simple for other transports as well 19:22:23 so far we don't have pagination so we decided to put it in a separated bp 19:23:06 kgriffs: news about this one? https://blueprints.launchpad.net/marconi/+spec/v1-obvious-optimizations 19:23:24 and the pagination one? 19:23:48 (a couple of more minutes for blueprints and then we'll move on to other topics) 19:24:38 I think the later can stay for H-1 19:25:32 I think we're in good shape for H-1 https://launchpad.net/marconi/+milestone/havana-1 19:25:56 * flaper87 is basically talking to himself :P 19:26:41 ooooooooooooooooooke-doke 19:26:44 moving on 19:27:12 #topic marconiclient adopting oslo's apiclient 19:27:37 so, I like the idea in general 19:27:52 and having a common client lib throughout openstack makes sense to me 19:28:07 (fucking gerrit is down) 19:28:18 aababilov: so, a couple of thoughts about your patch 19:28:19 but I have comments in my email 19:28:33 sorry, got distracted. 19:28:37 * kgriffs is reading log 19:28:48 1) I'd like to move that outside openstack/common and put it in common/ 19:28:56 should I say a couple of words about the library's purpose? 19:29:11 the reason is that openstack/common belongs to oslo 19:29:22 and as for now, we're implementing it as part of marconiclient 19:29:28 aababilov: go ahead 19:29:53 kgriffs: aababilov is the guy who has been working on the common client library for openstack 19:30:04 apiclient contains code that's common for python-*client 19:30:14 flaper87: re pagination, we have the idea of marker, limit defined. we just have to solve the fifo+guaranteed delivery 19:30:36 aababilov: excellent. nice progress on that 19:30:50 1) HttpClient (that reissues authentication request for expired tokens) 19:31:04 2) pluggable authentication: 19:31:04 a) keystone; 19:31:09 kgriffs: right, I saw it is marked as Good Progress, should it stay in H-1? 19:31:10 b) endpoint + token 19:31:13 c) nova legacy 19:31:18 d) whatever 19:31:26 flaper87: yeah, I plan on tackling that in the very near future 19:31:33 kgriffs: ++ 19:31:34 3) rich exception hierarchy 19:31:47 4) Manager and Resource base classes 19:32:00 aababilov: all that sounds good to me 19:32:01 5) utils for building CLI tools (temporarily) 19:32:45 what do we have now? 19:32:49 does it do async requests? 19:33:08 kgriffs: so, the idea would be to use marconiclient as a "test" environment for the api. I think both the api and marconiclient can benefit from this interaction 19:33:13 and early adopting stage 19:33:18 kgriffs: good question 19:33:19 no. Could you show me a sample implementation? 19:33:39 (implementation of async req) 19:33:48 ok, I'll proceed 19:33:53 we were playing around with that in the python-marconiclient prototype 19:34:01 gerrit is down, but believe me 19:34:18 https://github.com/painterjd/python-marconiclient 19:34:39 I have written updates for almost all python*clients, except of quantum and swift 19:34:46 all unit tests pass 19:34:50 #link https://github.com/kennethreitz/grequests 19:34:58 CLI utilities work and are backwards-compatible 19:34:59 aababilov: kgriffs perhaps based on that ^ 19:35:07 the reason I ask, is that 1) a event queue client naturally lends itself well to an event-driven model 19:35:09 thanks! 19:35:34 and 2 ) to get your thoughts on eventlet vs greenlet vs that-py3-thing 19:35:49 (AKA tulip) 19:35:58 * flaper87 thinks tulip is cool 19:36:39 grequests look nice 19:36:40 re grequests, that would be cool 19:36:46 :) 19:36:49 * flaper87 wants pop-tarts 19:36:54 My vague sense at the moment is that everybody seems to be a bit gung ho to play with Tulip 19:36:55 maybe we contribute and make it magically work with tulip and py3 19:37:27 * kgriffs gives flaper87 a chocolate pop-tart 19:37:34 w00000t 19:37:42 And that's across different OpenStack teams. 19:37:54 there was a discussion at the summit about migrating away from eventlet 19:37:58 but my point is to accept apiclient in some form and to begin improving it 19:38:05 (the other reason I bring this up) 19:38:09 yes 19:38:10 aababilov: that's the plan 19:38:17 async can come later 19:38:38 feel free to use marconi as a guinea pig 19:38:41 kgriffs: there was a question in the review about whether to have the client under openstack/common/apiclient or common/apiclient 19:38:42 could we accept apiclient to oslo? it's an incubator, isn't it? 19:38:47 (for apiclient in general) 19:38:52 marconiclient will be the first user 19:38:57 my suggestion is to put it in common 19:39:05 flaper87: kk 19:39:09 because openstack/common/ is oslo's holy ground 19:39:22 and dude, you don't want to mess with it 19:39:51 aababilov: yep, it's an incubator lib BUT, it is always good to have the base API sorted out before letting anything land there 19:39:58 so, first give it a try somewhere 19:40:02 and then move it there 19:40:09 oic 19:40:13 so that people *know* how that thing should work 19:40:20 heh 19:40:21 sure, but what will be the criterions to put it to oslo? 19:40:34 marconiclient lacks unit tests 19:40:43 * kgriffs is finally caught up with the conversation 19:40:45 aababilov: yep, it lacks of everything 19:40:53 novaclient and keystoneclient have them 19:41:20 we have integration tests in tempest 19:41:26 I could update horizon 19:41:27 aababilov: yep but we need many unittests 1) for apiclient (which are the ones that will be ported to oslo) and 2) for marconiclient 19:42:10 how quickly could you get apiclient accepted for one of the mature projects? 19:42:30 it depends on maintainers 19:42:33 TBH, I wouldn't do that 19:42:48 it took 3-4 days to update all clients 19:43:15 I'd rather test it and improve it on marconi than going out there and implement it in mature clients 19:43:28 +1 19:43:46 i was just thinking it may be a real chore to get it accepted into those other projects 19:43:55 (without any track record) 19:44:04 exactly 19:44:27 so, we've got 15 mins left and I'd love to share some thoughts about zmq transport 19:44:27 well, apiclient is not written from scratch 19:44:46 it's mostly an aggregation of code that already resides in *clients 19:44:49 aababilov: yeah, that's cool, I mean, it's based on other clients sweat 19:45:00 aababilov: TBH, that last sentence scares a bit 19:45:21 code from different places put in the same package... 19:45:33 it's not bad but it definitely neeeds to be tested a LOT 19:45:44 that's my thinking 19:46:04 so, again, I'd suggest you, if you agree, to use marconiclient as test environment 19:46:15 and both projects will ebnefit from each other 19:46:26 you can always go ahead and propose it to other clients as well 19:46:40 but if something changes in 1 client, you'll have to update all of them 19:46:54 sure, I agree to use marconiclient! 19:46:59 cooooooooool 19:47:12 aababilov: feel free to join #openstack-marconi :) 19:47:31 done :) 19:47:34 any other thoughts here ? 19:47:57 cool 19:47:59 moving on 19:48:07 #topic zmq transport and flaper87 crazy ideas 19:48:12 #link https://etherpad.openstack.org/marconi-zmq 19:48:17 so, I was working on that ^ 19:48:32 which seems incomplete 19:48:43 and that's what it actually is 19:49:12 and then thought that, if we've to implement an RPC like API for the zmq stuff, why don't we use the same rpc like protocol for all the transports? 19:49:15 * flaper87 runs away 19:49:22 * flaper87 runs fast, fast faaaaaaaaaaaaaaast 19:49:43 heh 19:49:47 the idea would be to use the same "RPC" like for HTTP communications as well 19:49:51 benefits: 19:49:55 1) same code 19:50:01 2) same verifications 19:50:08 3) less code to maintain 19:50:15 drawbacks: 19:50:30 1) RPC over HTTP, erm, that sounds like a bunch of POST requests 19:51:00 2) it's all json based and more data will flight to / from the server 19:51:01 RPC over HTTP is fuuuuuugly 19:51:18 other benefit I see is that the same protocol can be used for websocket 19:51:28 so, that's the crazy idea 19:51:38 websocket is ok 19:51:50 if it really sucks I'll just STFU 19:52:12 well, we have a couple paradigms 19:52:16 gerrit is alive! 19:52:28 one is RPC, one is REST 19:52:38 yeah 19:52:49 just thinking out loud. so... 19:52:54 go ahead 19:53:09 you've 8 mins before you'll have to shut your brain down 19:53:21 it would be interesting to layer HTTP and RPC over the controllers 19:53:37 just means the controllers have to support the combined set of everything REST and RPC need 19:53:41 :p 19:53:51 #link https://github.com/openstack/glance/blob/master/glance/common/rpc.py 19:54:03 kgriffs: there you can have an idea of how that could work ^ 19:54:31 kk 19:54:36 I'll have to noodle on this 19:54:45 so, I'd say, lets think this a bit more and elaborate the idea a bit better 19:55:08 #action flaper87 elaborate RPC idea better and get more pros / cons 19:55:26 I'll work on the RPC spec anyway because we'll need that for zmq 19:55:27 for now, I vote keeping the HTTP transport RESTful, but I'm open to doing something oslo-ish with the other transports 19:55:38 kgriffs: cool 19:55:44 so, speaking of oslo 19:56:00 kgriffs: did you read the pad? 19:56:08 there are some benefits from using it 19:56:42 * flaper87 just realized he jumped the tests status update 19:56:48 malini: SO SO Sorry 19:57:02 how much time you need for that? 19:57:11 just a couple of min 19:57:15 ETOOMANY TOPICS 19:57:20 but finish up the zmq stuff first 19:57:50 malini: not much to say for now, just wanted to share those 2 was for doing it so we can start thinking about that 19:58:07 plus, I wanted to tell the crazy idea 19:58:09 :P 19:58:11 moving on 19:58:13 flaper87: I saw the pad, will do some ponderin' 19:58:21 kgriffs: cool, thanks a lot 19:58:28 I'll share with cppcabrera as well 19:58:33 #topic system tests status update 19:58:38 malini: go ahead 19:58:44 I have fixed the large bulk of the flake8 errors in the system tests. The remaining few are module import errors. That one looks a little tricky & we are still figuring out how to fix tht. 19:58:44 2 mins 19:59:09 does it look like a flake8 bug? 19:59:16 * kgriffs famous last words 19:59:18 malini: cool, did you try asking mordred as well? (Monty) 19:59:25 aroo? 19:59:26 he implemented that for most projects 19:59:27 sure.. 19:59:32 mordred: there you are :D 19:59:37 sup 19:59:41 malini: ^ 19:59:54 I am having trouble getting some of my modules mergeed 20:00:01 flake8 claims its not a module 20:00:07 we've just 1 min left 20:00:17 malini: can you point me towards a failing review? 20:00:57 sure.. will ping u offline..we are almost out of time here 20:00:57 guys, I've got to end the meeting now! malini thanks for your hard work on tests. ++ for you 20:01:10 thanks :) 20:01:18 Thanks guys, really great meeting full of interesting topics 20:01:23 #endmeeting