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