16:04:26 #startmeeting storyboard 16:04:27 Meeting started Thu Feb 6 16:04:26 2014 UTC and is due to finish in 60 minutes. The chair is gothicmindfood. Information about MeetBot at http://wiki.debian.org/MeetBot. 16:04:28 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 16:04:30 The meeting name has been set to 'storyboard' 16:04:48 yay! I can do meetingbot commands. 16:05:11 #topic Current State of MVP 16:05:25 krotscheck: your floor 16:05:26 ALrightey 16:05:49 So to I finished the first run of the UI on monday, and that's working in a no-backend state. 16:05:55 Yesterday I got it wired up to the API. 16:06:18 Both of those WIP MVP commits work together, except both buidls are currently failing. 16:06:48 The Webclient is failing because... I don't know, apparently the database credentials stopped working on the integration tests? 16:07:39 The API changes are failing because I hacked that shit together as quickly as possible and it's code that should be thrown out and burned in effigy. 16:08:32 does anyone want to volunteer to burn krotscheck 's API code and replace it with something else? 16:08:35 I'll have a look at your change 16:08:51 Other than that, there is no auth layer, but the UI and the API can now create projects, stories, adn tasks. 16:09:07 Auth contorller is in progress 16:09:14 Nice! 16:09:21 yay! 16:09:27 awesome ;) 16:09:28 I'm just trying to launch in the most simple config with in-mem sotrage 16:09:44 NikitaKonovalov, I think it'll be enough for MVP0 16:09:51 it should be 16:10:05 the diff is that non in-memory storage will just not logout all users after restart 16:10:08 ALso, the tasks API doesn't actually seem to save titles. 16:10:16 And the data model doesn't have a description either. 16:10:58 the migration with an additional field should cure the problem 16:11:38 In case anyone is curious, the non-api client is here: http://docs-draft.openstack.org/97/70897/1/check/gate-storyboard-webclient-js-unittests/32bcc1d/dist/#!/ 16:11:46 * krotscheck cedes the floor to NikitaKonovalov 16:12:48 hmm, the link above is a blank page for me 16:12:53 * gothicmindfood loves the non-api client and thinks it's nice looking 16:13:08 it's not blank for me. 16:13:24 NikitaKonovalov: Ehh? Whaa? anything interesting showing up in the console? 16:13:40 now it's ok 16:14:03 there was a tim-out, but 10 page refreshes and it's working 16:14:27 NikitaKonovalov: anything you want to cover re: auth or the api? 16:15:12 Everything is clear for me right now 16:15:35 so implementation should not take very long 16:16:10 NikitaKonovalov and SergeyLukjanov - also, did you guys see the auth specs krotscheck and I wrote out at http://etherpad.openstack.org/p/StoryboardAuth ? 16:16:48 gothicmindfood, not yes 16:16:55 gothicmindfood, not yet* 16:17:04 gothicmindfood, I'll take a look on it tomorrow 16:17:46 Ok - not a problem. Feel free to get in there and edit it, too, SergeyLukjanov - we just wanted to do a krotscheck brain dump before he went to Thailand and abandoned us all :) 16:18:54 I'm not abandoning you! 16:19:07 * gothicmindfood kids krotscheck 16:19:19 ok 16:19:20 ol 16:19:33 do we have anything else we need to cover re: current state of MVP? 16:19:41 jeblair: hi! 16:19:51 sorry i'm late, anything i can help out with? 16:19:54 jeblair, o/ 16:20:30 da5xTYr 16:20:51 * jeblair reviews auth stories 16:21:19 I've started a few patches to introduce some functional tests 16:21:31 oops :) my test env pwd 16:21:50 krotscheck: can you link to the review for the change that's failing database tests? 16:22:07 ilyashakhat, just c-p your private key here ;) 16:22:16 the were stuck with a virtualenv release or smt. like that 16:22:20 no way! 16:22:44 jeblair: http://logs.openstack.org/97/70897/2/check/gate-storyboard-webclient-js-unittests/7e35c1d/console.html 16:23:17 https://review.openstack.org/#/c/70897/ 16:23:17 ruhe now tries to make them work with new depencies' versions 16:23:37 krotscheck: we changed some slave configuration recently. i don't know if that's the cause but i'll look into it 16:24:05 jeblair: That would make sense. 16:24:43 krotscheck: when are you back from vacation? 16:25:05 #action jeblair to look into db test failure 16:25:34 * gothicmindfood fails at meeting commands apparently 16:26:00 gothicmindfood: i believe that was correct 16:26:10 jeblair, The 24th 16:26:11 jeblair: oh yay. I thought it'd echo back to us all. 16:26:12 * ttx joins late 16:26:28 gothicmindfood: link and action are quiet 16:26:32 * krotscheck will have reception, but no laptop. 16:26:32 * ttx reads backlog 16:26:40 #link http://logs.openstack.org/97/70897/2/check/gate-storyboard-webclient-js-unittests/7e35c1d/console.html 16:26:41 ttx: hi there! 16:26:43 #link https://review.openstack.org/#/c/70897/ 16:27:17 Any other comments on MVP current state before we go to open discussion? 16:28:36 oooh, also... #link https://etherpad.openstack.org/p/StoryboardAuth 16:28:44 #link https://etherpad.openstack.org/p/StoryboardAuth 16:28:59 jeblair: you owe me a coke. 16:29:19 Oh, one. 16:29:30 (commands have to start lines, and i have a crate of mexi-cokes here; one has your name on it) 16:29:59 I threw some post-MVP api design thougths here: https://etherpad.openstack.org/p/StoryboardAPIPaging 16:31:02 #link https://etherpad.openstack.org/p/StoryboardAPIPaging 16:31:24 krotscheck: would be good to look at how other openstack project do pagination / limit / offset querying 16:31:40 unless your preference for option 2 is string 16:31:43 or strong 16:32:56 whatever we choose, pecan will handle both, but headers look better to me 16:33:14 ttx: any particular projects that might stand out over others as being better at the pagination thing? 16:33:35 (in case of a lack of standards) 16:33:40 I'm agreed with headers, it'll not clutter up API body 16:33:40 ttx: Yeah, I took a look at what Ironic was doing. There's some philosophically strong adherence to REST semantics there that I feel is overly pedantic, but they just return a plain array 16:33:46 gothicmindfood: I wouldn't dare saying one is better 16:33:55 ttx: smart man. :) 16:34:01 but I remember a lot of endless discussions about it in Glance 16:34:01 and aifik, horizon does pagination via setting some kind of a separator id 16:34:19 #link http://git.openstack.org/cgit/openstack/ironic/tree/ironic/api/controllers/v1/node.py#n480 16:34:22 and the maximum page size is kept in some settings field 16:34:27 For example, they use "marker" instead of "offset" 16:34:48 Feels like "what everyone else is doing" doesn't agree with each other 16:35:06 krotscheck: i've seen that with a few api servers, it may be the most common method with openstack 16:35:12 (the 'marker' idea) 16:37:05 jeblair: Yeah, naming is just semantics. I find it more interesting that there doesn't seem to be a way for the API to respond with "oh by the way I have this much" 16:37:57 Horizon uses marker because that's what the underlying APIs support 16:38:24 it provides that most limited form of pagination imaginable 16:38:32 if you own the API aim higher 16:40:53 thanks, david-lyle - anyone else have thoughts on that? 16:41:07 cool. i don't think we have to limit ourselves to what openstack is doing elsewhere, just that we should consider it, use it if it makes no difference; if it does make a difference, do whatever we think best but be informed about it. 16:41:40 Pagination really only requires three things. A marker, an record limit, and some understanding of how large the paged data set is. 16:41:42 The argument for the marker scheme from the services has been performance related 16:42:10 david-lyle: Marker is also a very useful metaphor because it doesn't care about RDB vs NoSQL 16:42:42 yes, and the page-limit is supported, it's the set size that doesn't come back 16:43:14 david-lyle: So your API returns just a plain array of results? 16:43:16 so you can keep clicking next, but have no idea that there are 10,000 more clicks to get to the end 16:43:49 just the number of results we request, or the API defined limit 16:43:57 Right. 16:44:12 we grab the last ID as the marker and go from there 16:44:34 david-lyle: Makes sense. 16:45:06 but there is no call to get total number of records available, nor is it returned 16:45:23 gothicmindfood: at some point we need to have some brainstorming around priorities. Talking to jeblair about it last weekend helped me structure my thoughts 16:46:26 ttx: agreed. shall we space some time out for that in the next meeting, or try to schedule something separately? 16:47:01 david-lyle: I was thinking of having a custom header added to the HTTP response to include the response size (once we have a large enough data set where that matters) 16:47:01 gothicmindfood: we could try a phone call as a first step. I rant better using phones 16:47:17 also, I think if we're close to finishing API and pagination, we can move topics. 16:47:25 #topic open discussion 16:47:27 seems like a better idea than modifying the returned data structure. 16:47:29 gothicmindfood: I expect you'll have to colect a variety of opinions around that topic and see if there is a convergent solution 16:47:36 kk 16:47:39 Ok, I'm out. 16:47:44 i'm wondering about site customization. i imagine deployers would like to use custom logos, headers, footers, and css. how should that be handled? i'm particularly unsure about how that sort of thing should work with a fully-client-side js app. 16:47:47 it is build time or run time customization? does the app fetch some config json from the server with that info? or...? 16:47:49 krotscheck: HAVE SO MUCH FUN. 16:47:59 oh, and that was a question for krotscheck. oh well. 16:48:08 jeblair: Replace Bootstrap.js. Done. 16:48:19 sorry 16:48:23 bootstrap.css 16:48:40 krotscheck: just? 16:48:57 krotscheck: cool, that's enough to help me understand the mechanism. thanks and have fun. 16:49:30 jeblair: I have some ideas on a customization path for the UI. 16:49:44 jeblair: Maybe we can put that on the agenda post-mvp? 16:50:13 jeblair: mordred: could you please help me to find why docs aren't uploaded to http://ci.openstack.org/storyboard ? 16:50:23 Toodles. Thanks, gothicmindfood ! 16:51:06 #action gothicmindfood to meet with ttx to start talking about post-MVP priorities 16:51:28 ruhe: definitely 16:52:26 anything else for open discussion time? 16:52:39 jeblair: i think we have everything needed in zuul (and mordred confirmed that during the sprint). but somehow post jenkins jobs were never executed 16:53:41 ruhe: ok 16:55:11 and just a status update from side: i help Nikita to build testing infrastructure for Pecan+SQLA+Alembic; once that is done we will be in 0.5 step away from MVP 16:55:22 gothicmindfood: nope 16:55:54 awesome, ruhe 16:55:57 ok 16:56:18 #endmeeting