20:00:00 <robcresswell> #startmeeting horizon 20:00:01 <openstack> Meeting started Wed Jun 8 20:00:00 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:02 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 20:00:05 <openstack> The meeting name has been set to 'horizon' 20:00:21 <hurgleburgler> (◠‿◠✿)ノ 20:00:26 <r1chardj0n3s> o/ 20:00:38 <rhagarty__> o/ 20:00:46 <robcresswell> The most punctual meeting start ever :D 20:00:53 <robcresswell> hi everyone 20:01:18 <tsufiev> o/ 20:01:20 <robcresswell> #link https://wiki.openstack.org/wiki/Meetings/Horizon#Agenda_for_2016-06-08_2000_UTC 20:01:28 <robcresswell> Todays agenda ^^ 20:01:52 <robcresswell> #topic Doc team guidelines on UI text content 20:02:01 <r1chardj0n3s> ohai 20:02:02 <robcresswell> r1chardj0n3s: You're up 20:02:22 <r1chardj0n3s> so http://docs.openstack.org/contributor-guide/ui-text-guidelines.html has been produced by the doc team and UX folks 20:02:22 <ducttape_> o/ 20:02:31 <tyr> o/ 20:02:45 <r1chardj0n3s> it'd be awesome if we all could have a look through 20:03:17 <r1chardj0n3s> Personally, I think there's some helpful things in there 20:03:46 <ediardo> o/ 20:03:47 <r1chardj0n3s> If you have any feedback for the docs team they'd love to know. Especially if your feedback is "um, why?" :-) 20:03:57 <kenji-i_> o/ 20:04:08 <r1chardj0n3s> (even more especially if the "um, why?" relates to the doc as a whole) 20:04:25 <robcresswell> http://docs.openstack.org/contributor-guide/ui-text-guidelines/ui-error-messages.html#alert-examples alternates on the full stop ending. dangit. 20:04:32 <robcresswell> I was hoping someone would finally settle that. 20:04:48 <r1chardj0n3s> Hah! 20:05:05 <tsufiev> Why didn't they finish 'in progress' messages with ... ? 20:05:23 <tsufiev> seems completely against my habits :) 20:05:30 <robcresswell> Yeah! Why not! Man, these docs folks. 20:05:44 * robcresswell raises pitchfork 20:05:52 <r1chardj0n3s> my work here is done 20:05:55 <r1chardj0n3s> ;-) 20:05:59 <robcresswell> haha. 20:06:10 <robcresswell> This is useful content anyway, thanks for raising it 20:06:33 <robcresswell> Any questions, or are we ready to move on? 20:06:51 <ediardo> about the doc? 20:07:05 <robcresswell> Yup. Otherwise will move to next agenda item. 20:07:06 * ediardo is reading the doc 20:07:15 <robcresswell> Ha, lets move on. 20:07:21 <ediardo> :) 20:07:21 <hurgleburgler> What is the line between what Doc people dictate 20:07:25 <hurgleburgler> and what style will dictate? 20:07:30 <r1chardj0n3s> I think the "workflow navigation text" one is weird and out of place (all about style) 20:07:46 <robcresswell> Got an example, hurgleburgler ? 20:07:46 <hurgleburgler> Shouldn't Doc people be helping out with formatting of actual content instead of layout of pages? 20:07:49 <tsufiev> hurgleburgler, the Doc people are instrument of style, aren't they? 20:08:13 <tsufiev> and of clarity, of course... 20:08:22 * ducttape_ is wondering if there is an escape from the rabbit hole 20:08:49 <r1chardj0n3s> hurgleburgler: afaict the only style guidline is the workflow nav text one? 20:08:55 <r1chardj0n3s> and I'd recommend they nuke that 20:09:27 <hurgleburgler> r1chardj0n3s: yeah, I was looking specifically at the 'UI Panel Formatting' —> Workflow one 20:09:39 <hurgleburgler> that was my only question … just wondering :) Carry on 20:09:58 <robcresswell> Cool. Lets pass that back to them and see what they say. 20:10:36 <robcresswell> #topic Blueprint: Enhance workflow actions with policy rules 20:10:44 <robcresswell> #link https://blueprints.launchpad.net/horizon/+spec/add-policy-rules-to-workflow-actions 20:10:50 <robcresswell> tsufiev: Your turn 20:10:57 <tsufiev> that's the blueprint from a morning meeting 20:11:34 <tsufiev> the goal is simple: to make a Django workflow step visible depending on if the policy for it is satisfied 20:11:48 <tyr> that's odd...I thought that already existed? 20:11:59 <ducttape_> sounds good, but this is more work on the django side of our framework, right ? 20:12:01 <tsufiev> in Angular :)? 20:12:26 <tsufiev> ducttape_, yes, exactly, it's a Django counterpart of what already we have in Angular 20:12:42 <tsufiev> the discussable part is if we want to still improve Django side of things 20:12:50 <david-lyle> tsufiev, I thought there was already a patch underway 20:13:05 <robcresswell> https://review.openstack.org/#/c/144152/ 20:13:18 <david-lyle> yeah, I see it now 20:13:22 <tsufiev> david-lyle, robcresswell, ack, it is 20:13:26 <robcresswell> A mere year and a half old 20:13:28 <david-lyle> thought this was already approved 20:14:08 <tsufiev> I think the bp was drafter before we introduced the procedure of regular bp approvals 20:14:20 <tsufiev> must have missed it 20:14:31 <tsufiev> *drafted 20:14:35 <robcresswell> I think we can approve this anyway. Its a sensible improvement. 20:14:46 <tyr> +1 We've had requests for this kind of functionality 20:14:49 <robcresswell> And we're a way off rewriting all workflows in angular. 20:15:24 <tsufiev> \o/ 20:15:25 <robcresswell> #info https://blueprints.launchpad.net/horizon/+spec/add-policy-rules-to-workflow-actions Approved 20:15:30 <ducttape_> I could see django workflows for some time to come 20:15:37 <tyr> on that front...I've been investigating a way to invoke the Django actions...from Angular ;) 20:15:47 <david-lyle> tsufiev, since I mentally approved that 3 releases ago, I updated the status ;) 20:15:56 <tsufiev> david-lyle, :))) 20:16:29 <robcresswell> Great. Lets move on :) 20:16:35 <david-lyle> my last comment on the patch only concerned text :( 20:16:41 <david-lyle> should have been in already 20:16:54 <robcresswell> #topic Blueprint: Supports extra properties in project and user 20:17:00 <robcresswell> #link https://blueprints.launchpad.net/horizon/+spec/support-extra-prop-for-project-and-user 20:17:18 <robcresswell> kenji-i: o/ 20:17:33 <kenji-i_> good morning! 20:17:55 <kenji-i_> oh it's my turn 20:18:00 <kenji-i_> This bp is to be able to treat extra property in horizon. 20:18:11 <kenji-i_> extra proper is defined in keystone db and already keysone api support. 20:18:26 <kenji-i_> extra propety 20:18:27 <david-lyle> kenji-i_, my only concern would be UX 20:18:31 <ducttape_> could totally see this being useful, sounds awesome 20:18:51 <david-lyle> what are you showing in the table? or only on details pages 20:19:27 <david-lyle> that doesn't seem t obe spelled out in the blueprint 20:19:31 <tsufiev> kenji-i, could keystone db solve the issue of storing various user settings for us? 20:19:35 <david-lyle> seem to be* 20:19:42 <david-lyle> tsufiev, no 20:19:46 <ducttape_> you could have a single column and have that have name:value pairs too 20:19:54 <tyr> would I see a new "Telephone" column...or just an "Extra" column that had telephone numbers? 20:19:56 <kenji-i_> I also think UX is my concern, I am thinking that table and detal page 20:20:36 <robcresswell> Mm, I agree. Listing key value pairs inside the table rows wouldn't be doable. It would have to be on the details page, or a modal/popover 20:20:57 <tsufiev> details drawer ftw! 20:21:03 <tyr> this is also a fabulous application of the extensible table Cindy wrote and the table columns registry 20:21:08 <robcresswell> Depends how the API returns the data. 20:21:16 <david-lyle> JSON 20:21:24 <david-lyle> the bp says 20:21:32 <robcresswell> I meant if it was part of the list, or a separate get 20:21:41 <david-lyle> ah 20:21:47 <david-lyle> no idea 20:22:13 <robcresswell> kenji-i_: I think the blueprint idea is fine, just might need some refining on how to display the data :) 20:23:05 <kenji-i_> table or detail page ? 20:23:15 <tyr> a "let me choose the visible columns" kind of pattern might apply 20:23:16 <david-lyle> detail page sounds the most dane 20:23:22 <david-lyle> *sane 20:23:57 <robcresswell> agreed 20:24:15 <tyr> My read of the blueprint is that it attempts to add columns to the tables to include often referenced additional data that is important to that operator. Pushing to details seems to defeat the purpose. 20:24:31 <kenji-i_> I agree david-lyle, I am trying to show in table, it's complexity 20:25:07 <robcresswell> tyr: Like I said, depends how the data is gathered. If its part of a list call, it might be more manageable 20:25:19 <robcresswell> tyr: If its a get per user, then its not 20:25:59 <david-lyle> managing visible columns becomes a bit of an issue without a large session store 20:26:15 <david-lyle> per table settings 20:26:27 <ducttape_> lets have kenji-i_ attempt to show it in the table, if it is not too much work, but otherwise details could be fine too 20:26:29 <david-lyle> for the 30 or so tables 20:26:52 <david-lyle> because people want to shove that in a cookie typically 20:27:03 <david-lyle> cookies are limited 20:27:06 <robcresswell> Well, if its just managing visibility, we could probably rig something up with css and a table/column name. 20:27:10 <david-lyle> but I digress 20:27:35 <ducttape_> support is there for the general idea of the bp, yes? 20:27:39 <robcresswell> Yup 20:27:43 <tyr> kenji-i_: I think you'd find value in some of the flexibility we are developing in Angular for tables and which columns are visible. It would mean "angularizing" the identity dashboard...but might kill two birds with one stone. Just a thought. 20:28:05 * tsufiev wonders if we take another attempt on enabling memcached in devstack and changing default session_engine 20:28:15 <tsufiev> *if we should take 20:28:29 <ducttape_> tsufiev the answer is always yes to that question 20:28:40 <robcresswell> #info https://blueprints.launchpad.net/horizon/+spec/support-extra-prop-for-project-and-user Approved 20:28:42 <david-lyle> tsufiev, well I think it's supposed to be oslo.cache now 20:28:49 <robcresswell> #topic Open Discussion 20:29:00 <david-lyle> which will not default to memcache but dogpile IIRC 20:29:03 <tyr> Quick plug for https://review.openstack.org/#/c/323534/ which introduces angular templates caching and theme overrides for Angular html fragments. Adds some nice performance gains for Angular code, and brings theming back to par with Django pages. 20:29:10 <tyr> I could use some help identifying possible corner cases, or deployment variations that might cause this template pre-loading strategy to fail. 20:29:16 <tsufiev> ducttape_, the only missing part is choosing a volunteer 20:29:18 <tyr> Thanks!! 20:29:34 <robcresswell> tyr: Looks good, thanks for doing that 20:29:49 <tsufiev> tyr, started looking into it right before the meeting 20:29:50 <ducttape_> tsufiev: did you want to discuss my ugly cinder quotas thing? I am looking at it currently, not sure how to escape this mess 20:29:58 <tsufiev> code is really interesting 20:30:13 <robcresswell> tyr: I need to disect it a bit, and figure out what you've done with that "cache this for a very long time" statement 20:30:27 <kenji-i_> sorry for reply late.. thank you!! I'll try it and considering your comments 20:30:34 <robcresswell> thanks kenji-i_ 20:30:42 <tsufiev> ducttape_, I'll be more prepared the next day 20:30:54 <ducttape_> ok, no problem / thank you tsufiev 20:30:58 <tsufiev> it's too late for quota mess in TZ+3 :) 20:31:10 <ducttape_> it's too late at every time of day fwiw 20:31:32 <tyr> robcresswell: lol...yep, use of 'cache' seems odd but tried to explain in commit comment and in-line comment. I don't think it is too nefarious. 20:32:07 <tsufiev> ducttape_, to be honest, every time I look at quotas code I feel an irresistible urge to throw it away completely :/ 20:32:18 <ducttape_> are angular items something that gets dynamically added? you usually run collectstatic and compress for them too, right ? 20:32:18 <robcresswell> tyr: Yeah, regardless it seems to be a big step in the right direction, so we can poke it a bit until its complete. Really appreciate the work on that. 20:32:48 <ducttape_> tsufiev: - yes, the quotas stuff should be recycled 20:34:59 <robcresswell> Anything else? Otherwise I shall reclaim my evening :) 20:35:04 <tsufiev> an announcement just in case, if you still haven't heard: now we have videos for failed integration tests 20:35:21 <lcastell> \o/ 20:35:23 <tsufiev> so if the job fails for your patch, don't hurry to recheck it, look inside 20:35:40 <r1chardj0n3s> \o/ tsufiev 20:35:52 <jlopezgu> sounds pretty nice 20:36:26 <ducttape_> maybe we can add cats to these videos? like a cat fail video ? 20:36:32 <tsufiev> another stupid/not so stupid application of that feature is that using @attach_video decorator we can attach video to any test, be it success or not 20:36:46 <tsufiev> like auto-demonstrating new features 20:37:05 <tsufiev> of course, you'll have to write an integration test for that 'auto' demo :) 20:37:13 <tsufiev> which may mean double profit 20:37:20 <r1chardj0n3s> :-) 20:37:32 <r1chardj0n3s> sounds neat, but also something I'm likely to forget about :/ 20:37:48 <robcresswell> tsufiev: Did the integration tests for angular LI merge yet? 20:37:52 <tsufiev> r1chardj0n3s, want me to remind about it for the next month on every meeting :)? 20:37:59 <r1chardj0n3s> tsufiev: thanks! 20:38:06 <tsufiev> robcresswell, sadly not yet, it have one unresolved dependency 20:38:22 <david-lyle> we're 1 +2 away from using tempest-horizon plugin for gating instead of the full dsvm job 20:38:25 <tsufiev> me and schipiga got little distracted from it 20:38:45 <r1chardj0n3s> david-lyle: that's an infra +2? 20:38:47 <robcresswell> tsufiev: Sure, np 20:38:52 <david-lyle> r1chardj0n3s, yes 20:39:10 <david-lyle> 327226 20:39:35 <r1chardj0n3s> ok, I have ... done something with that information :-) 20:39:39 <robcresswell> link for the lazy: https://review.openstack.org/#/c/327226 20:40:19 <david-lyle> as a bonus, I'm now an expert on broken tempest plugins 20:40:19 <r1chardj0n3s> see if we can't get it over the line 20:40:25 <robcresswell> david-lyle: lol 20:40:39 <r1chardj0n3s> david-lyle: is that ... debugging them or making them? 20:40:48 <david-lyle> r1chardj0n3s, both 20:40:49 <robcresswell> r1chardj0n3s: Maybe if we +1 it enough, all those +1s will get together and become a +2 20:41:27 <robcresswell> tyr, matt-borland: at some point very soon I'll need a hand updating smart table, angular, and ui bootstrap 20:41:45 <tyr> sure, how can we help? 20:42:04 <robcresswell> https://review.openstack.org/#/q/status:open+project:^openstack/xstatic.* 20:42:06 <matt-borland> robcresswell, is it basically testing with updated Xstatic packages? 20:42:21 <robcresswell> test the packages there and see how much work it is to make them work with horizon 20:42:43 <robcresswell> ui bootstrap directives all prepended ui- so that will break, but the services didnt change too much I think. 20:43:14 <robcresswell> smart table I've not looked in to yet. angular 1.4 I have a patch that seems to work fine but fail integration tests, so I need to figure that out. 20:43:32 <tsufiev> a short heads-up for those who are interested in GlanceV2 support in Horizon: http://eavesdrop.openstack.org/#Glance_Team_Meeting tomorrow there should be a discussion of 'copy-from' feature implementation in V2 which Horizon seems to need a lot 20:43:54 <robcresswell> david-lyle: if you get on to topology stuff, there is also an updated but unreleased d3 IIRC. 20:44:18 <david-lyle> robcresswell, yes, I'll try to check that out 20:44:50 <robcresswell> Excellent 20:44:51 <tsufiev> if someone besides me came to this meeting and said a word, this _might_ slightly increased the chances of having this feature in V2 20:45:22 <robcresswell> tsufiev: Can you give some background on why we need this? 20:45:28 <david-lyle> tsufiev, this is copy-from url? 20:45:44 <tsufiev> david-lyle, yes 20:45:59 <david-lyle> yeah, that's a strange one 20:46:04 <lhcheng> does people use Glance V2? :P 20:46:16 <david-lyle> not a lot of people you want copying in images 20:46:23 <tsufiev> robcresswell, there is a blueprint https://blueprints.launchpad.net/horizon/+spec/horizon-glance-v2 20:46:28 <david-lyle> lhcheng, v1 is deprecated don't you know 20:46:34 <robcresswell> lhcheng: It gets mentioned quite often :) 20:46:34 <david-lyle> :) 20:46:43 <tsufiev> well, I don't know either if copy-from an important feature for *us* 20:46:55 <lhcheng> david-lyle, robcresswell: like the keystone v2 deprecation ;) 20:47:02 <david-lyle> lhcheng, exactly 20:47:04 <tsufiev> perhaps, people who deploy may say something 20:47:09 <robcresswell> tsufiev: Ha, I was aware of glance v2, I meant background on copy-from specifically. 20:47:26 <robcresswell> Thats not a particular thing I've heard about, but glance gets asked about quite a lot. 20:47:51 <tsufiev> robcresswell, I got an impression that the lack of its support means a serious regression for Create Image UX in Horiozn 20:47:52 <robcresswell> lhcheng: Nothing is truly deprecated until its gone from devstack 20:47:56 <tsufiev> but I may be wrong 20:48:09 <lhcheng> I was just curious of the adoption, but since tsufiev is working on it, I guess there is an ask from their users. 20:48:21 <david-lyle> tsufiev, we'll lose a location field that is most likely blocked for most users 20:48:32 <lhcheng> robcresswell: hah true :D 20:48:47 <david-lyle> tsufiev, but I suspect there are people using it 20:48:51 <tsufiev> david-lyle, why can't they use Location with Copy Image unchecked? 20:48:55 <robcresswell> lhcheng: I dont have any numbers on it I'm afraid, but it was mentioned in the feedback at the summit and also asked about from time to time in IRC 20:49:27 <ducttape_> so you would loose the copy from a url option ? 20:49:42 <ducttape_> and be forced to upload the image via horizon? 20:49:43 <david-lyle> tsufiev, there are many implications for end users being able upload their own images from random urls 20:49:45 <lhcheng> robcresswell: ah I see, got it. sounds good then. 20:49:56 <tsufiev> ducttape_, yes, if it isn't implemented by the time V1 is removed completely 20:49:57 <david-lyle> it's a security problem first off 20:50:29 <david-lyle> tsufiev, I don't really have a horse in the race, but I can see the reluctance to adding 20:50:30 <david-lyle> it 20:50:34 <ducttape_> it is a horrible idea to upload images from horizon, the copy from url is the only option that makes any sense in my mind 20:50:57 <lhcheng> david-lyle: the image upload is restricted to certain users, maybe there is a separate rbac for copy-from? 20:51:00 <tsufiev> ducttape_, why is it a horrible idea? 20:51:02 <matt-borland> ducttape_++ 20:51:27 <ducttape_> it's horrible b/c it eats up memory / network / threads and times out..... it's just bad 20:51:27 <matt-borland> (in its current format) 20:51:32 <ducttape_> the cli is the way to do that 20:51:38 <david-lyle> ducttape_, why are you upload via horizon at all? 20:51:47 <ducttape_> we usually don't 20:51:47 <tsufiev> ducttape_, that's going to change in some way 20:52:07 <ducttape_> the copy from url is quick and easy, and it's fine 20:52:08 <tsufiev> ducttape_, see https://review.openstack.org/#/c/230434/ 20:52:12 <robcresswell> https://github.com/openstack/glance/blob/master/etc/policy.json#L11 20:52:26 <r1chardj0n3s> matt-borland, tsufiev: please see https://review.openstack.org/#/c/313243 20:52:26 <ducttape_> the upload from horizon means "please wait 40 mins and hope that something doesn't time out" 20:52:28 <robcresswell> copy from does have its own rule 20:52:33 <tsufiev> at least, it won't eat memory anymore 20:52:52 <david-lyle> robcresswell, understood 20:53:09 <matt-borland> r1chardj0n3s, yeah, will respond (but it *always* fails for any test) 20:53:16 <david-lyle> but the 5 operators in the cloud that should have that priviledge likely won't use horizon :) 20:53:50 <tsufiev> r1chardj0n3s, will try to localize the issue tomorrow 20:53:53 <r1chardj0n3s> matt-borland: are you absolutely positive you don't have any stale static files served? I simply can't think of another reason why it utterly fails just for you :/ 20:54:05 <ducttape_> tsufiev - that is better, but I would still strongly recomend to avoid horizon for this 20:54:08 <robcresswell> david-lyle: I don't really have a side in this debate, just wanted to point it out :) 20:54:15 <r1chardj0n3s> especially in such a findamental API imepdance kinda way 20:54:19 <matt-borland> yeah, I did some immense cleansing r1chardj0n3s 20:54:33 <tsufiev> okay, so I think that copy-from is really important 20:54:35 <david-lyle> robcresswell, me either :P 20:54:58 <robcresswell> Either way, it seems odd for us to worry too much from a Horizon point of view; if Glance dont want to provide it, we can send the angry people their way. 20:55:04 <r1chardj0n3s> tsufiev: the reason I need precise reproduction instructions is Swift is ... weird sometimes :-) 20:55:32 <r1chardj0n3s> matt-borland: I'm totally stumped. I can't think of a reason, other than having the wrong version of a JS file loaded, why you'd see code mismatching like that 20:55:43 <tsufiev> robcresswell, not the 'Horizon Heroes' attitude :-P 20:55:48 <r1chardj0n3s> I'll walk through the code again though 20:56:01 <matt-borland> r1chardj0n3s, it seemed to get something lost in the <actions> area 20:56:11 <ducttape_> I had a change to bring up, forgot about it - https://review.openstack.org/#/c/322325/ it's fairly simple, and lets the nova scheduler handle placement of vms during live migration 20:56:29 <robcresswell> tsufiev: haha, very true, just dont want to block v2 support in horizon because of a glance issue 20:57:11 <tsufiev> robcresswell, sure, makes sense. Just if we may have some influence over what design decision is made, why not exploit it? 20:57:33 <david-lyle> ducttape_, so that's basically "evacuate this host, I don't care to where" 20:57:37 <tsufiev> besides that, inter-project communication sometimes doesn't work well 20:57:56 <tsufiev> I mean, Glance community might event not know that this feature is important for Horizon 20:58:02 <ducttape_> yes david-lyle, or also "I have too many hosts that I cannot make an intelligent decision" 20:58:14 <david-lyle> ducttape_, sure 20:58:19 <david-lyle> makes sense 20:58:28 <ducttape_> imagine you have 200 hosts with various usage, how do you know which location to choose ? 20:58:37 <ducttape_> let nova figure it out 20:58:51 <robcresswell> tsufiev: That's a fair point. I'll come along to discuss. 20:58:57 <tsufiev> robcresswell, thanks! 20:59:25 <david-lyle> ducttape_, but that removes the choice option all together? 20:59:33 <r1chardj0n3s> matt-borland: so when actions-delete-selected.template.html is rendered it has items, but the callback doesn't get the item? 20:59:51 <ducttape_> no, it just adds the default selection to be "let nova decide, compute-001, compute-002" etc 21:00:06 <ducttape_> so you can also choose a host specifically 21:00:15 <ducttape_> but the default is let nova decide 21:00:26 <robcresswell> We're outta time 21:00:30 <robcresswell> Thanks all 21:00:32 <david-lyle> ducttape_, yep I'm dumb 21:00:34 <tsufiev> that was a really dense meeting :) 21:00:39 <tsufiev> thanks all! 21:00:41 <robcresswell> #endmeeting