20:00:13 <robcresswell> #startmeeting horizon 20:00:14 <openstack> Meeting started Wed Jul 20 20:00:13 2016 UTC and is due to finish in 60 minutes. The chair is robcresswell. Information about MeetBot at http://wiki.debian.org/MeetBot. 20:00:15 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 20:00:17 <openstack> The meeting name has been set to 'horizon' 20:00:29 <robcresswell> o/ 20:00:32 <jlopezgu> o/ 20:00:35 <Liuqing> o/ 20:00:49 <yohoffman> \o 20:01:25 <ediardo> o/ 20:01:27 <ediardo> Hi 20:01:46 <robcresswell> Hey everyone 20:01:51 <Liuqing> awake just now 20:01:56 <Liuqing> hello 20:02:02 <robcresswell> Liuqing: I was wondering if you ever slept! 20:02:20 <Liuqing> sleep about 4h 20:02:44 <robcresswell> We had the midcycle last week, which was great; I'll be sending out a summary email tomorrow talking about some of the discussion points and decisions made 20:03:14 <robcresswell> If anyone is managing plugins btw, please check the mailer as there's a discussion ongoing that I would like to get opinions on. 20:03:21 <lcastell> o/ 20:03:39 <robcresswell> We have an empty agenda today it seems. 20:03:54 <robcresswell> Just want to remind people that anyone can add agenda items at https://wiki.openstack.org/wiki/Meetings/Horizon 20:04:06 <Liuqing> yep 20:04:13 <lcastell> noted 20:04:52 <ediardo> I always get auth failed :( (wiki) 20:04:54 <robcresswell> Blueprints for discussion, difficult / controversial patches, general discussion, all welcome. 20:05:13 <robcresswell> ediardo: Ping me or another core and we'll add something if there is difficulty with auth 20:05:27 <ediardo> sure, ty! 20:05:36 <robcresswell> No worries 20:06:05 <robcresswell> A reminder about: http://releases.openstack.org/newton/schedule.html 20:06:14 <Liuqing> tyr hi 20:06:21 <tyr> o/ 20:06:31 <bpokorny> o/ 20:06:37 <robcresswell> Horizon Feature Freeze is August 25th at the latest 20:07:08 <robcresswell> So 5 weeks. Please ensure new features are reaching maturity, blueprints are approved etc 20:07:23 <robcresswell> The gate always slows down as we approach deadline, so don't procrastinate. 20:07:58 <Liuqing> not easy to release more angular panels/tables in 5weeks. 20:08:04 <lcastell> the Intel folks need some reviews on some of the filtering patches :) 20:08:25 <robcresswell> Due to the number of plugins and consumers of Horizon upstream now, FFEs will be stricter than before :) 20:08:40 <lcastell> https://review.openstack.org/#/q/topic:bp/server-side-filtering 20:08:44 <robcresswell> lcastell: Yep, I'm trying to get schema form testing done so I can get back to reviews 20:08:55 <Liuqing> tyr, https://review.openstack.org/#/c/329700/ , not very clear how it works 20:09:06 <ediardo> Yes, feedback is becoming critical now because we are starting to deal with core classes 20:09:16 <lcastell> ty, robcresswell 20:09:18 <robcresswell> Anyway, since there is an empty agenda, we can just have open discussion 20:09:23 <robcresswell> #topic Open Discussion 20:09:45 <bpokorny> Just an update on the Glance v2 patch. 20:10:03 <bpokorny> I found an issue today with admin users. 20:10:37 <bpokorny> As far as I can tell, if you're an admin with Glance v2 and request an image list, the list contains all the images in the cloud. 20:11:15 <bpokorny> So it screws up the "Shared with Project" listing in Horizon. 20:11:39 <bpokorny> All images that aren't public or owned by the tenant end up in "Shared with Project" for admins. 20:11:45 <ediardo> right 20:11:47 <robcresswell> Can we change the toggles if you're an admin? 20:12:03 <robcresswell> or change the toggles full stop, if they no longer fit glances model 20:12:23 <Liuqing> hide the button while we use glance v2? 20:12:31 <bpokorny> Glance v1 had an option for admins to request that they don't get all images in the cloud. 20:13:27 <Liuqing> bpokorny, yep glance v2 miss that feature or by default? 20:13:40 <bpokorny> I think it's a missed feature. 20:13:59 <bpokorny> I'll ask them if they have some workaround for it. 20:14:21 <bpokorny> robcresswell: Yeah, I might be able to change the toggles if it's an admin. 20:14:41 <robcresswell> If they don't, then I'd say same as before; just use what the API gives us 20:15:40 <robcresswell> Thanks for the update and your work on that though 20:15:50 <robcresswell> It sounds like "fun" :) 20:15:55 <bpokorny> np 20:16:04 <bpokorny> Keeps things interesting :) 20:16:55 <robcresswell> FYI https://review.openstack.org/#/c/332745/ is how I'd like us to build forms and workflows going forward. I haven't finished writing tests yet, but its functionally where I want it I believe 20:16:56 <bpokorny> That's all I had on that topic. 20:17:14 <robcresswell> Will be extending for registration etc in the future, but the form processing and field handling will stay the same 20:17:20 <robcresswell> (this is all in angular) 20:17:37 <robcresswell> If people are interested, please comment 20:18:09 <tyr> I've been using it to write Designate v2. It is very useful...although the schema form documentation is a bit obtuse 20:18:40 <Liuqing> tyr, have finished Designate v2? 20:18:41 <robcresswell> tyr: how so? 20:19:41 <tyr> as I'm trying to work with "condition" or "array", it has taken me awhile to get the form JSON "just so" to get a working form. 20:20:07 <tsufiev> o/ 20:20:16 <tyr> For simple forms it is pretty good, and I really like the standardization...but there are always special snowflakes cases. 20:20:29 <robcresswell> Hmm, okay. I had some issues with conditional tabs, I actually built that in our template decorator 20:20:45 <robcresswell> But most of the basic conditionals I found okay 20:20:57 <robcresswell> tsufiev: o/ 20:21:05 <matt-borland> o/ everybody 20:21:18 <robcresswell> tyr: Thanks for the comments though. If there are more specifics, please leave them inline or ping me 20:21:29 <tyr> I was struggling because of the way "form" and "model" are presented on the scope of my modal. 20:21:36 <jlopezgu> tsufiev, matt-borland: o/ 20:21:39 <tyr> Yep, trying to add specifics into your patch as I find them 20:21:52 <Liuqing> tsufiev, matt-borland HI 20:22:05 <tyr> robcresswell: UX review of the form elements would be a very nice step 20:22:31 <tyr> (more to bring them up to speed on where we are headed) 20:22:49 <robcresswell> That's true 20:23:07 <ediardo> tyr, now that you're talking ux, what's this thing you were asking for in #openstack-ux? https://openstack.invisionapp.com/d/login, 20:23:11 <ediardo> :) 20:23:27 <robcresswell> On the plus side, if we do change anything post-merge it shouldnt matter, since there shouldnt be any changes to anyones json etc. Just the base template. Which is nice. 20:23:37 <tyr> which also suggests a dev-panel for forms, similar to the bootstrap stuff, so we can see how themes affect the schema form elements. Just an idea. 20:23:56 <matt-borland> that's a good idea tyr 20:24:17 <robcresswell> Yeah, thats true. I've looked into writing a page that demos angular widgets a couple of times, but never had the time to finish it 20:24:18 <tsufiev> robcresswell, I am curious if plugins can add their own field template types to Horizon schema-form module? 20:24:39 <tsufiev> w/o overriding fields already defined in vanilla Horizon 20:24:52 <robcresswell> tsufiev: I *believe* they can, but I'd have to double check 20:24:57 <Liuqing> tsufiev maybe 20:25:28 <tsufiev> being additive would be a really nice feature 20:25:31 <tyr> ediardo: I was asking for access so i could review DNSaaS v2 panel design proposal 20:26:00 <robcresswell> tsufiev: https://github.com/json-schema-form/angular-schema-form/blob/master/docs/extending.md 20:26:22 <Liuqing> tyr,who has the access control of openstack invisionapp? 20:26:33 <ediardo> I'm curious if that tool can help us to prototype 20:26:42 <tyr> Liuqing: cores in openstack-ux I believe 20:26:42 <ediardo> and I could have access 20:26:46 <robcresswell> invision? I might do. piet_ definitely does. 20:26:51 <tsufiev> robcresswell, yep, it is the way you're extending angular schema widgets in vanilla horizon 20:26:52 <Liuqing> gitcha 20:27:11 <robcresswell> tsufiev: Yes, I just wasn't sure if it could be layered, if that makes sense 20:27:15 <robcresswell> as in multiple overrides. 20:27:23 <piet_> Someone needs access to Invision? 20:27:24 <tsufiev> what I'm talking about may be considered as enhancement hooks / extension points 20:27:30 <Liuqing> seems not hard to extend. 20:27:51 <robcresswell> tsufiev: Right, but I think you can do it the same way. for adding fields. 20:28:06 <Liuqing> piet_, it's me 20:28:08 <robcresswell> There are pieces we'll extend in the future to do the registration stuff. 20:28:14 <Liuqing> maybe tyr 20:29:20 <tsufiev> robcresswell, sure, the better extension points we have, the more happy are plugin writers :) 20:29:34 <Liuqing> ^^ 20:30:27 <robcresswell> tsufiev: Indeed! 20:30:54 <robcresswell> Does anyone else have any issues to raise? Otherwise we can end early :) 20:31:14 <tyr> robcresswell: I'm a little wary of the way schema form elements are organized in Horizon. 20:31:27 <robcresswell> Once again, please look to spend time (or ask managers for time) on reviews. We really need more +/- 1s on patches out there, as cores can't catch everything :) 20:31:33 <robcresswell> tyr: Oh? 20:31:59 <robcresswell> tyr: I can definitely tidy that up if you have suggestions 20:32:10 <tyr> widgets/form/fields/ suggests that they are reusable templates...but they are schema form specific. Is there a way we can make that more clear? 20:32:39 <tyr> schema form will certainly be useful...but I don't think authors will be able to use it 100%, depending on the form. 20:33:26 <robcresswell> I don't know that there is much distinction required. If we follow this route, we likely wont then invest time writing hz-<something>-field for very item 20:33:29 <robcresswell> every* 20:33:56 <tyr> as an author looking to write an action, things in widgets tend to be reusable components...however form/ is more of a support library for the sf-* directive found in modal-form 20:34:32 <robcresswell> Ah I see 20:34:50 <robcresswell> Yeah, I can alter the naming 20:34:51 <tyr> still chewing on it, but I think my suggestions boils down to "consider placing the schema form templates perhaps not in "widgets" 20:35:33 <robcresswell> Hmm, I think the form itself is still a widget though. I could rename the top level file schema-form 20:36:18 <robcresswell> I see the desire for having individual fields etc, but this approach seems like it would match well with the registry approach 20:36:18 <tyr> form is, certainly. 20:36:52 <robcresswell> Seperating fields/ from inside form/ seems a little arbitrary :/ 20:36:59 <tyr> not a big deal, just found it a little confusing because they aren't really "widgets" aka directives or services 20:37:25 <robcresswell> Yes, understood 20:37:38 <robcresswell> I think I'll rename the top level, but keep the dir nested inside. 20:37:49 <tyr> a modal "service" in widgets that launched modal with modal-form.html within it...that would be a great widget :) 20:38:23 <tyr> anyhow, I'll comment on the patch. Thanks for your work on the forms!! 20:38:30 <Liuqing> yep, common form need the modal-form.html, indeed. 20:38:37 <robcresswell> Indeed, it would be good to effectively wrap the ui-bootstrap modal service and just pass through a bit less info might be helpful 20:38:50 <matt-borland> yes, this will be a great move forward for rapid/consistent development 20:38:51 <robcresswell> at the moment, you need to launch a modal and pass a couple of very specific things in 20:39:05 <robcresswell> Doesn't require any angular knowledge either ;) 20:39:22 <matt-borland> exactly, is transferable not Not Built Here in the best of ways 20:39:24 <robcresswell> Just a JSON, which is nice once you get round a couple of little inconsistencies in it. 20:39:41 <tyr> it turns out that the modal controller can just pull "title", "form", "schema" and "model" from modal context...so even the modal controller can be generic. Author can then just focus on writing the action service (1 js file) 20:40:22 <tyr> "doesn't require any angular knowledge either".... :) 20:40:29 <Liuqing> and one spec.js 20:40:31 <tyr> I love dry British humor 20:41:01 <Liuqing> ...^^^ 20:41:20 <robcresswell> Liuqing: Yeah, the aim was to cut down on the kinda crazy file count too. 20:41:53 <Liuqing> now not easy to add creation actions. 20:42:02 <Liuqing> in angular way 20:42:52 <Liuqing> how many angular panels will land in newton release? 20:43:19 <robcresswell> tyr: Ha, I was being serious, in that it doesnt really require any knowledge of how angular plugs together. You just pass in your schema/form/model and let it do things. 20:43:43 <robcresswell> Liuqing: Images for one, people are looking at Flavors and Instances 20:43:48 <matt-borland> it's hard to say. I think Images and Flavors are likely from what I know Liuqing. I doubt we can get enough eyes on Instances to make it live by Newton 20:43:54 <robcresswell> I don't know that Instances will be ready. 20:44:00 <robcresswell> Main issue is testing now IMO. 20:44:13 <matt-borland> yep 20:44:17 <tyr> Liuqing: https://review.openstack.org/#/c/341182 has what I've learned about actions and schema forms so far. See the os-designate-zone "create" action. 20:44:41 <robcresswell> We need something more akin to E2E, whether thats integration tests, selenium, protractor, whatever. Its an open discussion really. But its a blocking issue for now. 20:44:56 <matt-borland> robcresswell, FYI I am working on the integration test side of that 20:45:04 <matt-borland> that's my main task at this point. 20:45:08 <tsufiev> matt-borland, really? 20:45:14 <Liuqing> cool matt-borland 20:45:21 <tsufiev> I mean, it's awesome news 20:45:39 <matt-borland> plan is to at least do the 2 'required' integration tests for new angular panels as discussed at the midcycle 20:45:39 <robcresswell> matt-borland: Awesome. 20:45:46 <robcresswell> Sounds good to me. 20:45:52 <Liuqing> tyr, thanks, will do some research about that and schema form 20:46:00 <matt-borland> and I expect to put examples of that in to the Flavor and Image switch patches 20:46:20 <robcresswell> tyr: Thats neat, using the service instead of passing a controller. 20:46:32 <robcresswell> Is that service using the registry idea then? 20:46:41 <robcresswell> service/factory blah stupid naming scheme. 20:46:47 <tsufiev> matt-borland, are you going just to port existing panels integration scenarios to use them for Angular? 20:47:00 <tyr> robcresswell: the zone create action? 20:47:11 <robcresswell> tyr: Yeah 20:47:16 <robcresswell> Curious how thats being executed 20:47:22 <matt-borland> tsufiev, no, we decided to have a different minimum 20:47:43 <matt-borland> targeting the 20:47:53 <matt-borland> 'most likely failures' approach (more like a smoke test) 20:48:03 <tsufiev> I see 20:48:18 <matt-borland> for Images the use cases will become radically changed anyway 20:48:24 <tyr> Correct, that service gets registered as a OS::Designate::Zone action in https://review.openstack.org/#/c/341182/7/designatedashboard/static/designatedashboard/resources/os-designate-zone/actions/actions.module.js 20:49:15 <robcresswell> Gotcha 20:49:37 <robcresswell> cool. 20:50:52 <robcresswell> lcastell: I'll get to those filtering patches this week. Very keen to see those merged this release. Nice improvements. 20:51:09 <lcastell> Thank you robcresswell! 20:51:16 <robcresswell> Anything else? final few minutes 20:52:21 <ediardo> robcresswell: there are some very old bugs that may be closed if some bps are completed, what's the process to follow there? invalidate them? link them to the patches? 20:52:34 <matt-borland> robcresswell, I kind of missed the early part, do you plan on trying to merge the schema-form stuff this week-ish? 20:52:44 <matt-borland> or is it out a ways? 20:52:56 <robcresswell> matt-borland: Yeah, I finished the functional side of it, just writing tests locally 20:53:04 <matt-borland> ok, cool, thanks robcresswell 20:53:12 <robcresswell> if you look at the patch now, I think its in a finished state (bar comments etc) 20:53:34 <robcresswell> Will be followed up by working out how to do it with registration for networks etc. 20:53:49 <robcresswell> But need to do reviews and django 1.10 compatibility before then 20:54:04 <robcresswell> ediardo: If htey are no longer an issue, mark "invalid" 20:54:17 <robcresswell> ediardo: If its still there, the owner can move it back to New etc. 20:54:38 <ediardo> So, they will no longer be an issue after the bp is completed... 20:54:46 <ediardo> ok 20:55:04 <robcresswell> ediardo: If so, you can just tag the bug in the blueprint patch that covers it 20:55:21 <robcresswell> So when the final bp patch merges, add closes-bug too if you like 20:56:13 <ediardo> k 20:56:21 <robcresswell> If it was fixed by a patch in the past though, just mark it invalid, otherwise its confusing to figure out which release it was fixed in :) 20:56:31 <ediardo> thanks 20:57:46 <robcresswell> Thanks for the hard work everyone! I look forward to beers with everyone in Barcelona :D 20:57:54 <robcresswell> #endmeeting