15:00:02 <krotscheck> #startmeeting StoryBoard 15:00:02 <openstack> Meeting started Mon Jul 14 15:00:02 2014 UTC and is due to finish in 60 minutes. The chair is krotscheck. Information about MeetBot at http://wiki.debian.org/MeetBot. 15:00:04 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 15:00:06 <openstack> The meeting name has been set to 'storyboard' 15:00:23 <NikitaKonovalov> o/ 15:00:41 <krotscheck> Here’s hoping it’s not just the two of us. 15:01:02 <anteaya> jeblair: is giving a presentation at the infra/qa meetup 15:01:19 <krotscheck> Alright, let’s do this quick then. I expect most of infra won’t be here due to being in germany 15:01:29 <krotscheck> anteaya: I figured as much. 15:01:33 <anteaya> good expectation 15:01:37 <anteaya> smaart man 15:01:58 <krotscheck> Honestly, I’m mildly jealous that infra was able to be in germany for the world cup match. 15:01:58 <krotscheck> Anyway 15:02:03 <krotscheck> #topic Specs 15:02:23 <krotscheck> I think there’s two new-ish ones. 15:02:48 <krotscheck> NikitaKonovalov: What were your thoughts on multiple search specifications? How do those break up? 15:03:37 <NikitaKonovalov> I've moved everything implying an external search engine to a separate spec 15:04:08 <krotscheck> Got it. 15:04:08 <NikitaKonovalov> Everything else stays where it was 15:04:19 <krotscheck> Ok, that makes perfect sense. 15:04:29 <krotscheck> Much like I moved the streaming API out into a different one. 15:04:30 <NikitaKonovalov> I've added some fulltext points to the spec 15:05:10 <krotscheck> Alright. 15:05:22 <krotscheck> Any other thoughts on specs? 15:05:47 <NikitaKonovalov> The Teams spec is also updated to address the comments 15:05:59 <NikitaKonovalov> waiting for reviews again 15:06:06 <krotscheck> Righto 15:06:21 * krotscheck will do that. 15:06:50 <krotscheck> #topic Ongoing Work 15:07:24 <NikitaKonovalov> who's first? 15:07:35 <krotscheck> Aside: Just got an email from ttx - he’s having trouble connecting, and it’s a holiday in france, so he won’t be here. 15:07:40 <krotscheck> I’ll go first. 15:08:15 <krotscheck> So, we have a new contributor starting up, who’ll hopefully be signing on as Ish__ - her name’s Aishwayra, and will be based out of seattle. 15:08:26 <krotscheck> So I’ll be spending about 25% of my time bringing her up to speed. 15:08:36 <krotscheck> She started friday. 15:09:00 <krotscheck> Other than that, I finally finished off the Project Group Admin UI, so we can start creating groups. Next step on that is to surface them in search. 15:09:00 <NikitaKonovalov> new contributor, great! 15:09:23 <krotscheck> Though I’m probably not going to do that just yet and pick up the subscription UI 15:09:59 <krotscheck> NikitaKonovalov, Aish’s expressed a desire to work on the message-consumer side of subscription. Do you have any problems with that? 15:10:57 <NikitaKonovalov> I have a change request for that already https://review.openstack.org/#/c/102842/ 15:11:07 <NikitaKonovalov> but it's not tested at all 15:11:24 <krotscheck> Hrm, ok. I’ll let her know. 15:11:38 <NikitaKonovalov> There are a lot of thigs to be improved there 15:12:06 <krotscheck> Especially since it didn’t pass jenkins :) 15:12:19 <krotscheck> Alright, I’ll fill her in when she gets in. 15:12:44 <krotscheck> She’ll ping you on the channel sometime this week. 15:12:49 <NikitaKonovalov> it could not find pip .tox/py26/bin/pip: No such file or directory 15:12:52 <NikitaKonovalov> that's strange 15:12:57 <krotscheck> Huhn. 15:13:02 <krotscheck> There she is! 15:13:13 <krotscheck> Everyone, meet ish_ ! 15:13:17 <ish_> Hi.. 15:13:18 <NikitaKonovalov> Hi 15:13:42 <krotscheck> I just mentioned to NikitaKonovalov that you were interested in working on the message-processing side of subscriptions. 15:14:04 <krotscheck> He’s already done some work to that regard on https://review.openstack.org/#/c/102842/ , however it could use a lot of improvement. 15:14:05 <ish_> oh yes.. I am interested in that.. 15:14:37 <ish_> I will take a look on this.. 15:14:44 <krotscheck> Excellent :) 15:14:58 <krotscheck> On with the meeting 15:15:14 <krotscheck> One hting that’s been worrying me is the rather large number of patches that I still have in review. 15:15:52 <NikitaKonovalov> krotscheck: a big part of those are approved 15:16:03 <krotscheck> With the infra sprint in germany right now, I’m not entirely certain we’ll get much movement on the puppet ones, but I’m open to suggestions on how to make javascript patches easier to stomach? 15:16:05 <NikitaKonovalov> but the proble is that npm is failing 15:16:32 <krotscheck> NikitaKonovalov: Right, that certainly doesn’t help. 15:16:41 <krotscheck> NikitaKonovalov: I should probably resurrect the NPM mirror patch of mine. 15:17:08 <NikitaKonovalov> krotscheck: a mirror should definitly help 15:17:34 <NikitaKonovalov> because it's not only the gate that is failing 15:17:39 <krotscheck> Another thing that jeblair mentioned is that our draft build doesn’t actually build a valid client, since the draft-client doesn’t know how to connect to the production API. 15:18:07 <krotscheck> I did some work to that end last week, getting our build up to trusty and splitting our various tasks apart. 15:18:34 <krotscheck> With that we should be able to inject the production API URI and have those draft clients actually work. 15:18:47 <krotscheck> Which would then mean that for UI review, nobody would have to download and run the code themselves. 15:18:53 <krotscheck> ergo: less friction. 15:19:04 <NikitaKonovalov> krotscheck: agree 15:19:31 <krotscheck> Though that will invite a lot more opinionated commentary :) 15:19:47 <krotscheck> Either way, that’s on my side burner right now, because I like feedback. 15:20:10 <krotscheck> That’s it for me. To summarize: I’ll be working on susbcription UI, getting all those approved patches landed, helping ish_ get up to speed, and do ENV injection on our build. 15:20:19 <krotscheck> NikitaKonovalov: Your turn. 15:20:22 <NikitaKonovalov> OK 15:20:57 <NikitaKonovalov> I've been looking for a way to make full-text indexes for our initial search 15:21:23 <NikitaKonovalov> and found an SqlAlchecmy plugin that works with MySQL 15:21:38 <krotscheck> Oh? 15:21:43 <krotscheck> Neat! 15:22:04 <NikitaKonovalov> so the change is on review https://review.openstack.org/#/c/101476/ 15:22:39 <NikitaKonovalov> The bad news is that it breaks our tests 15:22:59 <NikitaKonovalov> we cant use metadata to create test databases anymore 15:23:06 <krotscheck> Oh, crap. 15:23:08 <krotscheck> That’s right 15:23:44 <NikitaKonovalov> So I'll focus on rewriting test base classes 15:24:09 * krotscheck looks at that log output. 15:24:27 <krotscheck> Something doesn’t make sense to me here. Why does adding a fulltext index on a table make the schema test fail? 15:25:16 <NikitaKonovalov> The SqlAlchemy does not parse the create statement correctly 15:25:34 <krotscheck> Ah, got it. 15:25:50 <NikitaKonovalov> I guess the plugin was not tested to work work with metadata tables 15:26:15 <krotscheck> Ok, so we’ll need to work on those base classes. 15:26:19 <krotscheck> Anything else? 15:26:20 <NikitaKonovalov> if you look into a migration file. I had to write raw sql to create those indexes 15:27:21 <NikitaKonovalov> I think the solution will be in creating the db with migration, but every test will have it's own connection string, so the tests do not intersect 15:27:44 <krotscheck> Won’t there be an intersection on the data itself? 15:28:18 <krotscheck> We’ve written raw SQL before: Not ideal, but since we’ve committed to MySQL I don’t think that’ll be a problem. 15:28:19 <NikitaKonovalov> I mean each test will have it's own db created with migrations, not with meta 15:29:47 <krotscheck> Gotcha, that makes sense. 15:29:56 <krotscheck> Go on/ 15:30:04 <NikitaKonovalov> And back to ongoing work, I've added a DB API for subscriptions and rebased the messaging patch on top of it 15:30:28 <NikitaKonovalov> and some minor improvements to timeline events to make it work 15:30:37 <krotscheck> Dagnabbit, you beat me to it :) 15:31:09 <NikitaKonovalov> here is the DB API https://review.openstack.org/#/c/106037/ 15:31:29 <NikitaKonovalov> The missing thing for subscriptions is the REST API 15:31:43 <NikitaKonovalov> krotscheck: want to take that? 15:31:56 <krotscheck> NikitaKonovalov: I’ll take it. 15:32:00 <NikitaKonovalov> ok 15:32:20 <krotscheck> #action Krotscheck Base subscription API on top of https://review.openstack.org/#/c/106037/ 15:33:09 <NikitaKonovalov> I've got no more updates 15:33:56 <krotscheck> Ok! I think that’s it for ongoing work. 15:34:03 <krotscheck> #topic Open Discussion 15:34:38 <krotscheck> I’ve been pretty happy that things seem to be picking up speed a bit. 15:34:56 <NikitaKonovalov> krotscheck: btw, I've tried rechecking that https://review.openstack.org/#/c/99975/ several times today 15:35:11 <krotscheck> Yeah, saw that. 15:35:13 <krotscheck> Hrm. 15:35:19 <NikitaKonovalov> and all the times it fails on different package 15:35:24 <krotscheck> NPM fail 15:35:48 <krotscheck> Ok, sounds like we really need a mirror. 15:37:08 <krotscheck> I’ll poke nibalizer - he can help me get the last few pieces together. 15:37:30 <krotscheck> In the meantime I’ll clear my local npm cache and keep trying until it’s up again. 15:38:30 <krotscheck> I’ve got no other questions/comments/ things. Anyone else? 15:38:34 <ish_> NikitaKonovalov: Can u tell me a little more about message-processing side of subscription? 15:39:00 <NikitaKonovalov> ish_: sure 15:39:48 <NikitaKonovalov> There is a listener which takes messages from the queue 15:39:51 <NikitaKonovalov> https://review.openstack.org/#/c/102842/7/storyboard/notifications/listener/notification_listener.py,cm 15:40:14 <NikitaKonovalov> Each message now contains only the event_id 15:40:36 <NikitaKonovalov> so the next step is fetching the event form db by id 15:40:46 <ish_> okay.. 15:41:23 <NikitaKonovalov> and then the event is added to subscription feeds 15:41:40 <NikitaKonovalov> https://review.openstack.org/#/c/102842/7/storyboard/notifications/listener/event_handler.py,cm 15:42:18 <NikitaKonovalov> If you want to launch it locally, you need a rabbitmq server running 15:42:40 <NikitaKonovalov> with a guest user and guest password 15:43:21 <NikitaKonovalov> also you need to enable the message publishing in the config file 15:43:28 <NikitaKonovalov> The sample is here https://review.openstack.org/#/c/102842/7/etc/storyboard.conf.sample,cm 15:43:40 <NikitaKonovalov> just change enabled to True 15:43:57 <ish_> I have not yet set up my dev environment. I'm facing some issues. 15:44:00 <krotscheck> So, the only kind of events that’ll be broadcast will be the creation of a story timeline event? 15:44:31 <NikitaKonovalov> krotscheck: right now all timeline events are broadcasted 15:44:44 * krotscheck wonders how that’ll work with the https://review.openstack.org/#/c/105252/ 15:45:31 <NikitaKonovalov> krotscheck: we can set as many handlers as we want for the same event 15:46:03 <krotscheck> Ok, I’ll read the review to understand it better. 15:46:05 <krotscheck> Just curious 15:47:04 <krotscheck> Alright, let’s take deeper discussion on this to #storyboard 15:47:11 <NikitaKonovalov> agree 15:47:17 <ish_> sure. 15:47:20 <krotscheck> I’m going to wrap up the meeting, any more detailed topics that need to be addressed? 15:47:36 <NikitaKonovalov> nothing from my side 15:47:44 <krotscheck> ish_? 15:47:56 <ish_> nothing.. 15:48:10 <krotscheck> Well then, thanks everyone! 15:48:10 <krotscheck> #endmeeting