12:01:02 <david-lyle_afk> #startmeeting Horizon
12:01:03 <openstack> Meeting started Wed Feb  4 12:01:02 2015 UTC and is due to finish in 60 minutes.  The chair is david-lyle_afk. Information about MeetBot at http://wiki.debian.org/MeetBot.
12:01:05 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote.
12:01:08 <openstack> The meeting name has been set to 'horizon'
12:01:08 <david-lyle_afk> Hello everyone
12:01:13 <r1chardj0n3s> hihi david-lyle_afk
12:01:13 <mattfarina> Hello
12:01:14 <akrivoka> hi everyone
12:01:22 <rbertram> Hey
12:01:25 <mrunge> hey o/
12:01:40 * david-lyle slightly less afk now
12:01:48 <r1chardj0n3s> "slightly" :)
12:02:05 <david-lyle> the beauty of 5am
12:02:09 <r1chardj0n3s> :/
12:02:14 <r1chardj0n3s> oh, radomir isn't here
12:02:20 <r1chardj0n3s> oh well, he misses out!
12:03:35 <david-lyle> first for the bookkeeping
12:04:19 <david-lyle> k-2 closes on Feb 5, I would like to have it wrapped and tagged latter today US time
12:04:22 <david-lyle> https://launchpad.net/horizon/+milestone/kilo-2
12:04:35 <david-lyle> I trimmed the list down substantially for bps
12:04:47 <david-lyle> there are 3 more that have a chance of landing
12:05:09 <david-lyle> the rest got bumped to k-3
12:05:22 <david-lyle> which is now excessively large
12:05:53 <david-lyle> and contains all the big ticket items for Juno
12:06:17 <david-lyle> I'm not sure I even have a general angularization bp
12:06:45 <r1chardj0n3s> david-lyle: that was originally covered by the identity table rework bp
12:06:55 <r1chardj0n3s> david-lyle: and the launch instance bp
12:07:02 <david-lyle> that's what I was about to ask
12:07:06 <r1chardj0n3s> the scope has creeped since then :/
12:07:10 <david-lyle> about the identity
12:07:29 <david-lyle> r1chardj0n3s: sure
12:07:34 <r1chardj0n3s> unfortunately, that's still thai's baby even though I help out around the edges
12:08:12 <david-lyle> I think we're getting close to start landing a lot of the backend part of that
12:08:23 <david-lyle> but we can talk about that in a bit
12:08:25 <r1chardj0n3s> it is certainly starting to land, yes
12:08:48 <david-lyle> so other than k-2 closing and needing a few more core reviews
12:08:59 <david-lyle> other general items are...
12:09:24 <david-lyle> We spent a bit of the cross-project meeting yesterday discussing the big-tent and horizon
12:09:40 <david-lyle> as I mentioned in the last meeting, we need to come up with a plan
12:10:02 <david-lyle> we were leaning toward a pure plugin model at the last Horizon meeting
12:10:26 <david-lyle> I think that will have to suffice for some items, the concern that remains is consistent UX
12:10:48 * david-lyle is cheating slightly by calling Horizon consistent
12:10:49 <mattfarina> i've not looked but, would that plugin model work for JS?
12:11:07 <david-lyle> mattfarina: yes, it's designed to
12:11:16 <david-lyle> you can add angular modules now
12:12:01 <david-lyle> there was some concern that some trove and sahara patches have been languishing
12:12:17 <david-lyle> which was the reason for the conversation
12:12:55 <david-lyle> just mentioning to everyone, because it's not just on my mind moving forward
12:13:14 <mrunge> oh, there are more patches like that, e.g some neutron and all router dashboard patches
12:13:35 <david-lyle> mrunge: indeed
12:13:37 <mrunge> david-lyle, the main issue here is, we don't have the expertise in those areas
12:13:48 <david-lyle> that was also brought up
12:14:01 <mrunge> moving areas back to the projects would be a good option
12:14:38 <david-lyle> but you lose UX consistency and potentially overall quality
12:14:50 <david-lyle> it needs to be discussed more
12:14:59 <david-lyle> the router dash is a special case
12:15:13 <david-lyle> it's a third party dash that slipped in
12:15:22 <mrunge> yes
12:15:27 <david-lyle> I don't think it belongs
12:15:51 <david-lyle> I'm ok with bug fixes to it because it's there, but don't want to add new features
12:16:13 <mrunge> david-lyle, but wouldn't then the plugin model fit for this?
12:16:33 <david-lyle> mrunge: aboslutely for a third party
12:16:42 <KanagarajM> david-lyle: For admin-> system info panel, I have submitted one horizon blue print for  a new feature implemented in heat in k-2 https://blueprints.launchpad.net/horizon/+spec/heat-engine-status-report-horizon. could you consider for k-3?
12:16:44 <mrunge> I could assume, e.g. a company working on storage might want to see additional features supported?
12:16:59 <david-lyle> we may even want to spin it out ourselves
12:17:27 <mrunge> I assumed that ;-)
12:17:37 <david-lyle> mrunge: yes, if it goes beyond the cinder API, it should be external
12:17:45 <mrunge> what about 'rings' in horizon?
12:17:53 <mrunge> core horizon and plugins?
12:18:09 <david-lyle> mrunge: where do the plugins live
12:18:22 <david-lyle> that's the remaining question
12:18:27 <mrunge> whereas I wouldn't necessarily make a technical distinction between plugins and core
12:18:45 <david-lyle> I see 3 rings
12:19:04 <mrunge> ... and which ones?
12:19:11 <david-lyle> core, openstack big tent projects, and 3rd party
12:19:19 <david-lyle> the two ends are easy
12:19:39 <david-lyle> middle one's home needs to be determined
12:20:45 <mrunge> openstack - stackforge - closed source proprietary shit ?
12:21:20 <david-lyle> the thing is stackforge will become openstack
12:21:33 <david-lyle> for more things
12:21:41 <david-lyle> possibly a lot more things
12:22:11 <mrunge> sigh. get's worse and worse to put it all together
12:22:51 <david-lyle> mrunge: I agree, but a UI that looks like 20 different teams slapped it together is not a great answer either
12:23:10 <mrunge> I totally agree with you
12:23:14 <rdopiera> that's why we need to make it easier to make and extend the views
12:23:50 <rdopiera> I had that proposal for layouts that got shot down by angular...
12:23:55 <mattfarina> rdopiera i like the "extend the views" part of that
12:24:28 <rdopiera> mattfarina: we are struggling with that in tuskar-ui (aka tripleo-ui)
12:24:50 <rdopiera> it's possible currently, but a lot of boilerplate and unnecessary work
12:25:18 <rdopiera> and you may get conflicts between plugins easily
12:25:25 <david-lyle> rdopiera: extend the views how, extend instances view or horizon views in general?
12:25:49 <rdopiera> david-lyle: right now we have classes for the views that are like table view, or tab view, etc.
12:26:05 <mattfarina> rdopiera i was thinking of looking into this post kilo. other systems have solved the conflit issue well enough
12:26:30 <rdopiera> david-lyle: I would like to replace those with "layout" views with slots -- things like tables, tabs, menus, graphs -- would go into those slots
12:27:02 <rdopiera> david-lyle: so each view would basically have a list of objects that go into those slots, and would be responsible for rendering their html in the right spot on the page
12:27:18 <rdopiera> david-lyle: this way you can easily replace one slot with another, or add another slot to a view
12:28:39 <rdopiera> there would be different layout views -- simple, two-column, with tabs, etc.
12:29:01 <david-lyle> rdopiera: I remember the proposal now
12:29:08 <rdopiera> a lot like the gui toolkits
12:29:21 <david-lyle> it's still valid even if it's done in angular
12:30:49 * david-lyle just shuddered thinking of python generated angular
12:31:04 <r1chardj0n3s> just don't do it
12:31:08 <r1chardj0n3s> :P
12:31:20 <david-lyle> r1chardj0n3s: scared myself
12:31:39 <TravT> what about some angular generated pythong?
12:31:41 <rdopiera> well, the contents of those slots may as well be angular stuff
12:31:51 <rdopiera> it doesn't matter
12:31:53 <david-lyle> rdopiera: yes
12:32:01 <rdopiera> it's just for the plugins to be able to easily swap them out
12:32:07 <david-lyle> or django at this point
12:32:22 <rdopiera> it will also make it easier to rewrite stuff to angular
12:32:29 <rdopiera> because you can do it in smaller steps
12:33:21 <r1chardj0n3s> not that "slots" in angular might just be *directives* which can be extended or overridden
12:33:32 <r1chardj0n3s> er, "note" not "not"
12:33:52 <david-lyle> I find it surprising that django doesn't already have these types of views
12:34:06 <david-lyle> will research more after
12:34:45 <david-lyle> I'll start a mailing list thread about horizon and the big tent
12:34:51 <david-lyle> we can discuss there
12:35:01 <david-lyle> we have an agenda to get to :)
12:35:05 <neillc> rdopiera: do you have a link to your proposal?
12:35:13 <r1chardj0n3s> david-lyle: please include a small intro in that email :)
12:35:54 <david-lyle> r1chardj0n3s: will do
12:36:00 <r1chardj0n3s> cheers!
12:36:07 <rdopiera> neillc: I'm not sure, it was a year ago
12:36:29 <rdopiera> neillc: it was written up in the etherpads for the Atlanta summit...
12:36:42 <david-lyle_afk> #topic Switching to bower from xstatic
12:36:52 <neillc> ok thanks
12:37:16 <r1chardj0n3s> ok this is the topic I added :)
12:37:18 * david-lyle pass r1chardj0n3s the mic
12:37:23 <r1chardj0n3s> thanks!
12:37:31 <r1chardj0n3s> So rdopiera asked me if I could go ahead and implement https://blueprints.launchpad.net/horizon/+spec/static-file-bower
12:37:46 <r1chardj0n3s> since objections are withering away at this point
12:38:05 <r1chardj0n3s> a couple of people popped up saying that lack of node.js support on their platforms is a problem
12:38:20 <r1chardj0n3s> so ... I wrote a python implementation of the subset of bower that we need
12:38:35 <mattfarina> r1chardj0n3s did anyone figure out the plan for mirrors of the code (in addition to the bower registry) for testing and build environments?
12:38:41 <david-lyle> nothing more python won't fix
12:38:46 <r1chardj0n3s> mattfarina: I'm totally getting to that :)
12:38:51 <r1chardj0n3s> It's not finished, but the remaining work is not a huge task and neillc's going to finish it off
12:39:04 <r1chardj0n3s> I think this is the least-resistance path to getting bower into the project
12:39:09 <r1chardj0n3s> It won't handle dependencies, requiring us to explicitly list all components with pinned versions. I believe this is desirable for Horizon anyway.
12:39:24 <r1chardj0n3s> Once we've got that integrated into Horizon, we will look at providing a simple caching proxy that can be used by #infra to remove Internet connectivity issues.
12:39:24 <r1chardj0n3s> (hai mattfarina ;)
12:39:57 <rdopiera> that's awesome
12:39:58 <david-lyle> so a bower freeze
12:40:04 <r1chardj0n3s> yep
12:40:30 <r1chardj0n3s> bower (the node.js implementation) has no capacity for mirrors/proxies and probably never will because it's *hideously* complex
12:40:59 <r1chardj0n3s> bower.py on the other hand is a simple implementation and we can easily add a caching proxy mode
12:41:18 <david-lyle> sounds reasonable
12:41:19 <mrunge> this is *awesome*
12:41:31 <david-lyle> this will solve a lot of headaches
12:41:38 <r1chardj0n3s> FYI the current implementation is https://github.com/r1chardj0n3s/laughing-robot
12:41:57 <r1chardj0n3s> (I love github's always-appropriate random project names ;)
12:41:57 <david-lyle> and neillc thanks for taking one for the team :D
12:42:06 <neillc> heh
12:42:09 <r1chardj0n3s> yes!
12:42:53 <david-lyle> so next week then?...
12:42:55 <r1chardj0n3s> so, if everyone's cool with that as an approach, we (well, neillc) will forge ahead!
12:43:04 <david-lyle> +1
12:43:06 <rbertram> r1chardj0n3s: when is it ready for us to use?
12:43:07 <r1chardj0n3s> neillc totally said he'd have it done by Friday
12:43:08 <TravT> r1chardj0n3s: I love it.
12:43:16 <r1chardj0n3s> :)
12:43:20 <mattfarina> +1
12:43:22 <r1chardj0n3s> [he might not have said that thing]
12:43:31 <neillc> that's not quite how *I* remember that conversation going...
12:43:43 <r1chardj0n3s> oh sure
12:44:29 <david-lyle> thanks r1chardj0n3s
12:44:45 <david-lyle> great news
12:45:02 <david-lyle_afk> #topic Open Discussion
12:45:03 <r1chardj0n3s> rbertram: more realistically, patches will start hitting (for new requirements and the integration of the tool) in the next week or two
12:45:27 <rbertram> r1chardj0n3s: cool
12:46:00 <david-lyle> After that high note, I'd like to bring it down a bit and remind people that k-3 closes on March 19, just 6 weeks away
12:46:26 <david-lyle> We have a lot of high priority items left to get in
12:46:31 * rbertram is taking x static items off his todo list
12:47:38 <david-lyle> so we're really going to have to push to land some of the big changes
12:47:45 <r1chardj0n3s> also, folks, please think about how bower.py might assist the creation of system packages from bower packages
12:47:46 <david-lyle> assuming they're ready
12:48:29 <mattfarina> the system packages are build on xstatic ones. so, we'll still need to maintain the ones we already do
12:48:38 <mattfarina> unless the build process changes
12:49:03 <mattfarina> any thought to how to do that?
12:50:25 <mrunge> I see separate packages as a profit here
12:50:56 <mrunge> since we won't interphere with already released versions
12:51:37 <mattfarina> on an unrelated note, has anyone looked at the angular reusable wizard... https://review.openstack.org/#/c/137417
12:51:41 <r1chardj0n3s> david-lyle: at the moment https://review.openstack.org/#/c/150636/ is kinda the blocker patch for the angular work
12:52:02 <r1chardj0n3s> mattfarina: shen only just added the demo, and it's 11:51pm so I was going to look at it tomorrow :)
12:52:33 <david-lyle> r1chardj0n3s: that's my top review priority other than k-2
12:52:45 <david-lyle> not much left for k-2
12:52:48 <r1chardj0n3s> david-lyle: it's certainly my priority patch
12:53:01 <TravT> Yes, that reusable wizard is the next thing ready for reviews.
12:53:15 <david-lyle> r1chardj0n3s: I will look today
12:53:23 <TravT> we've got a number of other reusable widgets that should be ready within the next week
12:53:35 <r1chardj0n3s> I've already gone over the code of the wizard, but haven't had a chance to see it in action, which is why the demo is great to have now
12:54:02 <TravT> r1chardj0n3s: how close is the keystone api?
12:54:26 <r1chardj0n3s> TravT: shen raised an issue about unit tests, which I've had to respond vaguely to
12:54:45 <TravT> i didn't get to rebase the glance api on it today and round it out, but will later today.
12:54:58 <r1chardj0n3s> I'm pretty sure I covered off your params issue
12:55:06 <TravT> yes, i saw that
12:55:08 <TravT> thanks
12:55:12 <TravT> it looks like it should work
12:55:17 <r1chardj0n3s> np :)
12:55:20 <david-lyle> r1chardj0n3s: in all fairness he commented vaguely to begin with
12:55:52 <mattfarina> r1chardj0n3s which tests? The Jasmine ones?
12:56:01 <r1chardj0n3s> mattfarina: yep
12:56:13 <mattfarina> r1chardj0n3s he has another review up to address Jasmine
12:56:28 <r1chardj0n3s> BTW if anyone has any objections to me adding support for using karma as the jasmin test runner, please speak now
12:56:29 <r1chardj0n3s> :)
12:56:49 <r1chardj0n3s> mattfarina: that was a jasmine configuration issue though - which I had to fix in my patch anyway (so rebase, yay!)
12:56:57 * rdopiera has no objections
12:57:32 <r1chardj0n3s> (current jasmine configuration is ... obscure ;)
12:58:09 <r1chardj0n3s> I think someone mentioned jpich's phrase "tribal knowledge" IIRC
12:58:27 <TravT> we've got a lot of cross dependencies going on with this work that is going to be pretty painful if we don't merge and iterate
12:58:33 <david-lyle> tribe of 2 maybe
12:58:41 * david-lyle not in that tribe
12:58:42 <r1chardj0n3s> david-lyle: indeed
12:58:50 <r1chardj0n3s> TravT: yes, merging ASAP :)
12:59:21 <r1chardj0n3s> I'm getting good at rebasing and cherry-picking. These aren't life goals I originally had ;)
12:59:33 <mattfarina> ha
12:59:34 <TravT> i love your latest branch name
12:59:37 <TravT> merge-hell
12:59:40 <david-lyle> cores, please review the angular patches, the best part is r1chardj0n3s top patch isn't even angular
12:59:46 <david-lyle> for the most part
12:59:53 <r1chardj0n3s> I completely forgot that those are exposed ;)
13:00:09 <david-lyle> forgot about the 200 lines
13:00:16 <david-lyle> not all angular
13:00:19 <mrunge> r1chardj0n3s, you could have picked worse names ;)
13:00:19 <TravT> https://review.openstack.org/#/c/150636/16
13:00:34 <r1chardj0n3s> mrunge: I will be *very* careful in the future choosing my names ;)
13:00:51 <TravT> you can always do the git review -t <topic> if you want to give a diff name
13:01:05 <r1chardj0n3s> oh, you should *not* have told me about that ;)
13:01:07 <TravT> but I don't mind the funny names
13:01:10 <r1chardj0n3s> whee!
13:01:43 <david-lyle> time's up. Thanks everyone and have a great week. 6 weeks until k-3
13:01:50 <david-lyle> #endmeeting