20:00:10 #startmeeting horizon 20:00:11 Meeting started Wed Nov 16 20:00:10 2016 UTC and is due to finish in 60 minutes. The chair is r1chardj0n3s. Information about MeetBot at http://wiki.debian.org/MeetBot. 20:00:12 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 20:00:14 The meeting name has been set to 'horizon' 20:00:16 (◠‿◠✿)ノ 20:00:19 o/ 20:00:22 o/ 20:00:23 o/ 20:00:28 o/ 20:00:30 o/ 20:00:30 [=_=]/ 20:00:33 o/ 20:00:41 o/ 20:00:53 .oO( was tqtran replaced by a bot? ) 20:01:01 heh 20:01:35 thats my face each morning, it gets rounder as the day progresses 20:01:41 woah so many people 20:01:50 * r1chardj0n3s wasn't going to jinx it 20:01:54 who's there :)? 20:02:00 \o/ 20:02:04 I'll start off with the usual stuff 20:02:04 knock knock 20:02:09 #topic Priority patches for review 20:02:13 hehe 20:02:21 is a full party today! 20:02:23 #link https://review.openstack.org/#/q/starredby:r1chardj0n3s%20AND%20status:open lists the patches we need to get reviewed ASAP 20:02:27 ♪└|∵|┐♪└|∵|┘♪┌|∵|┘♪ ♪└|∵┌|└| ∵ |┘|┐∵|┘ 20:02:51 though since I'll be tagging O-1 tomorrow (or maybe Saturday if we're optimistic about any of those patches) they probably won't be making it in 20:03:01 I have a question about the priority reviews -- should we also reviews the ones that are marked as work in progress? 20:03:06 I've got a busy Saturday morning though. 20:03:12 * tsufiev on his way to address the latest comments in profiler patch 20:03:14 << guilty of WIP 20:03:43 That tox patch keeps growing. Because we thought it would be fun to put all our translation infra for babel inside run_tests :( 20:03:46 robcresswell: I think maybe the tox one might not make it this week, but I'm also not sure that's a huge problem 20:04:00 No, its progressing fine, its just turned out to be a bigger job than I thought. 20:04:10 story of openstack I suppose. 20:04:16 since it doesn't really have any knock-on effects to others like frameworks would 20:04:31 but it would be super nice for everyone to stop using run_tests as soon as possible this release 20:04:38 so, you know, get on with it 20:04:39 :-) 20:04:59 fortunately I didn't setup ci for 11 yet 20:05:04 * tsufiev expects a lot of complaints once it's finally done 20:05:25 r1chardj0n3s / robcresswell - should / could we add a quick patch to bark at people and say "use this instead please" ? 20:05:35 for tox that is 20:05:52 Already done that. If you use run_tests it has a big warning for every command 20:06:00 Something about it being removed. 20:06:04 Clearly it was very noticeable. 20:06:05 yeah. maybe it could USE SOME BOLD ? :-) 20:06:29 how does the blink tag work in the cli ? 20:06:40 ;) 20:06:55 Once O-1 is tagged I'll start loading the various next priority patches into the starred list. If you have favourites you'd like to encourage me to list there, please let me know. 20:07:08 BIG BOLD RED BLINK :D 20:07:33 +2 20:07:40 ducttape_: ANSI code 5 or 6 20:07:54 you're welcome 20:08:13 * ducttape_ did not expect this wealth of info 20:08:18 ok, moving on 20:08:25 #topic Priority bugs 20:08:29 robcresswell: https://github.com/openstack-infra/project-config/blob/ad92dd20289c1861c2d0d68eeebd21fa1629a597/jenkins/jobs/horizon.yaml#L79 BTW 20:08:58 I only have one priority bug listed at the moment 20:09:02 https://bugs.launchpad.net/horizon/+bug/1624743 20:09:02 Launchpad bug 1624743 in OpenStack Dashboard (Horizon) "Project image table: admin user sees images which are not shared with me" [High,In progress] - Assigned to Brad Pokorny (bpokorny) 20:10:13 It'd be super nice if someone had some spare time they could look into that one. 20:10:16 o/ 20:11:16 #topic Nova changing simple tenant usage API 20:11:23 so the patch is https://review.openstack.org/#/c/375170/ r1chardj0n3s? 20:11:25 #link https://review.openstack.org/#/c/386771/ is a spec for changing the API 20:11:34 perhaps add it to priority patches? 20:11:58 tsufiev: thanks, I had missed that patch! I'll star it and review it today 20:12:27 :) 20:12:38 Let me know if you guys have any questions on the patch. 20:12:48 So the nova folks want to fix the horrible performance of the os-simple-tenant-usage API call, which has been an issue for us in the past. 20:13:06 I'm not confident it's been done in the most efficient way, but it's at least a bandaid for the problem :/ 20:13:25 thanks bpokorny 20:13:29 np 20:14:24 starred it too 20:14:35 would be good to improve that, but we would likely need some graceful fall back option too (once it is available) 20:15:54 yep 20:16:08 robcresswell: could you please update us on where our xstatic packages are? 20:16:40 \o/ Sure. So, we've updated and released several packages now, I've got a patch to the Horizon relnotes that lists them 20:17:06 https://review.openstack.org/#/c/398302 20:17:34 We're working on ui-bootstrap, d3 4.x, jquery 3.x... they all have breaking changes 20:17:35 r1chardj0n3s: betherly couldn't come today, but she's working on the pagination patch 20:18:12 But overall, making good progress. 20:18:35 we're still waiting on the patch to limit Mitaka's use of bootstrap so it doesn't break 20:18:36 https://review.openstack.org/#/c/396447/ 20:18:49 I'll nudge the requirements folks about that again today 20:19:39 And of course all the poor plugins will need to be updated too 20:19:40 sounds good 20:19:49 #link https://blueprints.launchpad.net/horizon/+spec/simple-tenant-usage-pagination 20:19:55 we have a blueprint for it too 20:20:35 rdopiera: thanks! 20:22:16 robcresswell: so should I also put in requirements limits for Mitaka for d3 and jquery? 20:23:17 r1chardj0n3s: Yes, I suppose so 20:23:59 Maybe I can get that shoe-horned into the current patch that's not yet merged, though it'd help to know the versions of d3 and jqeury that compatibility was broken in 20:24:18 I'll take that on today 20:24:28 ok, moving on 20:24:32 #topic Cookiecutter template for an OpenStack Dashboard UI plugin project 20:24:37 #link https://blueprints.launchpad.net/horizon/+spec/ui-cookiecutter 20:24:55 tqtran, I think you are championing this one? 20:24:55 so shuu isnt here probably 20:24:59 yeah 20:25:06 * ducttape_ ❤ cookies 20:25:17 hes created a cookie cutter for horizon plugins some time ago 20:25:39 i think we can potentially reuse this for our own startdash cmd (which doesnt really work) 20:25:51 we have one for python but none for angular panels 20:25:54 ooh, I like removing code 20:26:18 the command works, just doesn't stub out angular 20:26:24 so i think we can potentially reuse this for startdash and make it an official horizon repo 20:26:38 it works, but i think cindy and i found a few bug with it 20:26:45 this was some time ago, so i cant be sure now 20:26:51 it doesn't get much love 20:27:10 right, there were recent changes that did not get incorporated 20:27:28 anyway, point is, this cookie cutter should be an official horizon repo that we support 20:27:37 and the side benefit is that we can also use it in our own start dash 20:27:39 raise your hand if you know startdash and startpanel exist o/ 20:27:43 So... the only downside is more code to support, right? 20:27:46 o/ 20:28:02 I mean, if we already ignore start*, do we want to add more? 20:28:07 right, the downside is we (horizon drivers) are now in charge of maintaining that repo 20:28:09 instead of shuu 20:28:32 yes i think we do since new projects can use it to jump start their own project 20:28:45 it will make life a bit easier 20:29:43 or we can just point people to shuu's repo, but down side is that if we make changes in the future, shuu's repo is going to be out of touch 20:30:18 so whats the verdict? should we vote? 20:30:39 if shuu's repo is not getting love, I'd say move it into someplace that will look after it, and keep it running 20:30:54 I personally need to think about it some before making a decision. 20:31:10 ok, we can revisit after everyone mulls over it 20:31:12 My feeling is that we dont even maintain the existing ones, who's going to maintain the new one? 20:31:18 even if it is not working 100% of the time, at least try to use common locations / tooling / etc 20:31:22 Its a cool idea, no doubt 20:31:36 I just dont want to be the one debugging it on IRC with someone in 3 months time. 20:31:39 :) 20:31:39 my point would be we had startdash and startpanel and they didn't get love and that's in the horizon tree, another repo is going to languish unless it's actively used 20:32:29 can this tool be invoked from ./run_tests.sh ? ;) 20:32:40 wait are you saying bring it into Horizon, david-lyle, so it gets more attention? 20:32:40 lol 20:32:41 but it's a good idea and useful tool for sure 20:32:54 robcresswell: I'm not sure, TBH 20:32:59 but whats the alternative? we are pushing everyone toward plugins, isnt it part of our responsibility to make it easier for them? 20:33:18 I just am suspicious how up-to-date it will remain in our care 20:33:21 tqtran: Yes, but a broken tool isnt easier for anyone :) 20:33:28 right now, you have to manually recreate those files, its a bit of a pain 20:33:51 is it something we should do? absolutely. Is it something we will do effectively, not sure 20:33:58 hahaha 20:34:04 So could we instread update start* in Horizon to be correct? 20:34:05 bringing the tool back in, and then deciding to remove it (if it gets no love) - this is an option too 20:34:06 david-lyle: +1 20:34:31 ducttape_: Have you ever tried taking a feature away from horizon operators before? :) 20:34:42 no way, those guys are jerks 20:34:46 lol 20:34:48 LOL 20:34:52 r1chardj0n3s: even if we update start dash, we still dont have one for angular 20:35:11 (fwiw I'm not sure we can embed ui-cookiecutter in the Horizon repos and have it still work with the cookiecutter tool) 20:35:24 so the cookie cutter will still need to come in at some point 20:35:41 I guess our poor oversight is better than a complete orphan 20:36:19 i think so too. some oversight is better than throwing people out in the cold 20:36:29 less bad is the phrase david-lyle 20:36:34 (oh, no, my concern about pulling it in is incorrect) 20:37:24 Well, propose a patch 20:37:26 we're not the only project to use cookie cutter, tempest is also doing the same thing 20:37:27 We'll see how it goes 20:37:39 so, we have three options, I think? 1) Ignore it and "fix" start* in Horizon, 2) Add ui-cookiecutter as an openstack project under the Horizon tree or 3) pull ui-cookiecutter into Horizon to replace start* 20:38:09 its just a documentation patch that says, heres is the official horizon-plugin-cookie-cutter, and heres how to use it 20:38:11 Both 2 and 3 mean shuu can't actively maintain the project any longer without becoming a Horizon core, correct? 20:38:42 r1chardj0n3s: You can just give it its own core team that inherits from horizon-core too 20:39:00 robcresswell: ok, good 20:39:14 would the horizon cores not just implicitly shuu for many of these patches ? 20:39:20 trust ^ 20:39:48 separate core works 20:40:01 looks the same to everyone otherwise 20:40:18 honestly, theres not much code in there. shouldnt be too hard to maintain it. we can just fork over shuu's work and take over 20:40:19 Yeah, manila already do that, they have their own core team but horizon are cores in it too. I think searchlight ui does it too. 20:40:31 we dont have to make him a core to maintain that project 20:40:45 just if he wanted 20:40:50 right, if he wanted 20:40:55 yep, having shuu (and potentially others, along with Horizon cores) be core of the project ameliorates the main concern about it being kept up to date I think. 20:40:58 if he's dumping and running, yes, there's no pont 20:41:09 *point 20:41:22 im sure he will be happy to maintain it 20:41:38 I don't see any evidence that this is a dump-and-run 20:43:16 So, the BP also proposes that startdash use ui-cookiecutter instead of the current code. 20:43:26 wasn't making an accusation, just didn't know the full story 20:43:35 That would presumably mean Horizon pulling in the cookiecutter tool and invoking it. 20:44:00 And removing the existing startdash/startpanel. 20:44:31 i think that requires a bit more investigation. i have to look into how we can actually hook it up. 20:44:41 the part about us taking over the repo is what im proposing. 20:44:50 the other part, i think we should investigate first 20:45:44 I'm fine in or out 20:46:26 I think it makes sense for us to take over the repo with a separate set of cores specific to the project (even if that set is just shuu) 20:46:51 That reduces the inherited burden for the current Horizon team. 20:47:17 worse case, no one maintains it. we're back to square one, didnt lose anything. 20:47:18 the easiest first step for sure 20:47:38 and if gets dusty we just drop repo support 20:47:49 and if someone needs plugin setup, we have a doc that points them to the repo and how to use it. easy peasy 20:47:53 i think it's a plus, a good starting pt for newcomers 20:48:35 To be clear; does this actually *work* right now? and how? 20:49:24 ah, via https://github.com/audreyr/cookiecutter 20:49:54 yep 20:49:57 http://docs.openstack.org/developer/tempest/plugin.html#plugin-cookiecutter 20:50:04 heres what tempest does for their test plugin 20:50:21 essentially, they have a patch for docs that guide users on how to use it 20:50:32 tqtran: would you like to be the approver-shepherd for the ui-cookiecutter BP? 20:50:42 yes please 20:50:48 Cool, sounds good 20:51:26 go for it, with the understanding that it's currently approved for being a project with the proviso I've noted in the BP, and that further investigation is needed regarding Horizon integration :-) 20:51:43 i dont think the plugin shuu has is complete, its probably missing a few things like translation but we can add to that 20:51:59 ok, i'll start the process 20:52:03 cool 20:52:15 \o/ 20:52:24 ok, we have a few minutes - do we have anything else anyone would like to bring up? 20:52:55 Just to note that the weekly Keystone-Horizon meeting will be tomorrow, at the same time as this meeting (2000 UTC) in #openstack-cp 20:53:05 r1chardj0n3s: I had an item on there 20:53:11 might need to refresh the page 20:53:27 #link https://etherpad.openstack.org/p/ocata-keystone-horizon the etherpad for the keystone/horizon meeting 20:53:39 robcresswell: ack! you snuck it in! go for it :-) 20:53:48 #topic gettext in JS - angular gettext? global gettext? text-shim.js? 20:54:04 I think the answer is "yes?" :-) 20:54:07 r1chardj0n3s, I have kind of status update on 'fixing integration tests' - the one I already mentioned to you 20:54:12 So, in sorting out tox/run_tests, I kinda realised how much of our i18n infra is fractured 20:54:57 we seem to have this test-shim(?) that allows global gettext, we have angular-gettext which is used in half a dozen places, and then all our commands are just bash scripts, which are hardcoded to o_d and horizon so plugin code cant use them 20:55:09 So I've mostly fixed the hard coded extraction etc. 20:55:28 But I'm really confused by the direction with test-shim and angular-gettext; I was hoping someone could explain. 20:55:49 robcresswell: angular-gettext provides the angular templating translation mechanisms 20:55:58 Are we ever going to remove that shim? 20:56:02 so theres two part to i18n, the message extraction and message substitution 20:56:14 Maybe Im confusing it with the gettext angular module, which some parts include. 20:56:15 angular-gettext is the substituion part 20:56:20 some use gettext globally 20:56:27 I'm not familiar with the test-shim 20:56:48 gettext global is used by JS code 20:56:52 right, django embeds a catalog object containing the gettext function 20:56:57 which is globally available 20:57:13 but within anguar modules, we have a wrapper gettext that we encourage people to use 20:57:30 both have to exist (since we still have legacy js code) 20:57:39 So, how does that wrapper work? And why dont we actually use it? 20:57:56 the wrapper uses the global gettext underneath it all 20:57:56 And why does it have to imported as 'gettext'? Because that prevents use of ngettext etc. 20:58:10 we do use it, all of the angular code injects it 20:58:26 it has to be 'gettext' because of the message extraction part 20:58:35 most of the modules are using the global one :/ 20:58:38 we are using babel, and babel looks specifically for gettext 20:58:56 if they are, then it is incorrect and should be using the injected gettext 20:59:04 okay, got that part 20:59:25 Ill continue this in #horizon 20:59:32 sorry folks, we are out of time :-( 20:59:50 np 20:59:51 thanks everyone for coming, and let's continue the gettext discussion in #horizon 20:59:54 the test-shim is there so we can use gettext in our tests (its just a mocked version) - though its been a while and i might be totally wrong here 21:00:04 #endmeeting