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