Thursday, 2016-05-19

*** jamesmcarthur has joined #storyboard00:21
*** jamesmcarthur has quit IRC00:31
*** jamesmcarthur has joined #storyboard00:40
*** jamesmcarthur has quit IRC01:03
*** jamesmcarthur has joined #storyboard01:11
*** jamesmcarthur has quit IRC01:33
*** jamesmcarthur has joined #storyboard01:39
*** jamesmcarthur has quit IRC01:55
*** jamesmcarthur has joined #storyboard02:04
*** jamesmcarthur has quit IRC02:05
*** mrmartin has joined #storyboard02:12
*** mrmartin has quit IRC02:14
*** mrmartin has joined #storyboard07:13
*** mrmartin has quit IRC07:35
*** mrmartin has joined #storyboard10:50
*** mrmartin has quit IRC11:00
Zaramoooorning11:05
ZaraSotK is running errands, I am half asleep (but getting up at last!)11:06
Zarain case anyone was wondering about the quiet11:06
*** mrmartin has joined #storyboard11:26
*** mrmartin has quit IRC11:32
*** jamesmcarthur has joined #storyboard13:07
Zaralooking at the gerrit bot again now13:09
ZaraI'll try to update the wip today, so the comments are in gerrit so people can see where it's going13:09
Zaraplan is to use the sandbox to test commit message syntax... once I've fixed the control flow13:09
*** jamesmcarthur has quit IRC13:11
*** jtomasek_ has joined #storyboard13:35
*** jamesmcarthur has joined #storyboard14:00
Zaraand the other thing is load-testing, using the dev server14:06
Zaraso we should find out how other projects are doing that14:06
pedroalvarezwow! storyboard-dev is a thing!14:06
SotKyeah :D14:07
Zarahttps://storyboard-dev.openstack.org/14:08
Zaraa beautiful blank canvas, no stories yet!14:08
Zarawho will make the first story?14:08
persiaShould it not start with an import?14:09
persiaMaybe a scheduled job that wipes and reimports once a week or so?14:09
*** jamesmcarthur has quit IRC14:09
SotKsounds sensible to me14:10
persiaMy thought is that real data contains more unexpected corner cases.14:10
persiaMaybe private stories do not get imported, for security reasons.14:11
persiaThe docs-draft CI job should probably also point there.14:11
* SotK wonders if we have the requisite db access for such a thing14:11
SotKyeah, we should fix that14:11
Zaraagreed on weird corner cases. we need to make it clear when it'll wipe if we wipe and reimport, or could be annoying for someone trying to debug a weird case14:12
* persia finds http://docs-draft.openstack.org/66/312666/6/check/gate-storyboard-webclient-js-draft/b769b60//dist/#!/story/2000535 useful as a visual aid, by way of example.14:12
persiaZara: yes, but I think weekly + decent python support should make that less painful.14:12
*** jamesmcarthur has joined #storyboard14:13
Zarapersia: yeah, as long as it's obvious to users when things will be deleted, and we have a way to prevent the wipe if someone asks for longer, I think we can have whatever frequency we want14:14
Zaraanother danger with seeding it with production data is that people may mistake it for storyboard.openstack.org14:15
Zara'this is the storyboard instance, for developers, I'm a developer; guess I log my bug here'14:15
Zara+ they're both red, so tabbing around will lead to mistakes14:16
persiaGood point.  Maybe it needs a persistent branding patch.14:16
persiaOr maybe it should only allow docs-draft access.14:16
ZaraI'd like people to be able to use it as a sandbox, so I'd prefer some sort of branding14:17
Zara'DEV SERVER DO NOT STORE YOUR MEMOIRS'14:17
persiaMakes sense.14:18
openstackgerritAdam Coldrick proposed openstack-infra/storyboard-webclient: Make the docs-draft build point to storyboard-dev  https://review.openstack.org/31870214:20
Zara(how we do that... I'm still hazy on. (both what it should look like and how to patch the config appropriately) but one thing at a time!)14:20
Zaraace, thanks14:20
*** alexismonville has joined #storyboard14:20
alexismonvilleZara: hello, I would like to know if there was a discussion around this proposed changed https://review.openstack.org/#/c/314185/14:21
Zarahi, alexismonville! :) yeah, we're happy with it so far, we're waiting for the spec to be finished as the parts remaining aren't things we can add (that's up to fungi, ttx or jeblair, I believe).14:23
alexismonvillethanks Zara14:24
ZaraI'm also hoping the proposed approach leads to more contributors :)14:24
alexismonvillethat's why I ask14:24
alexismonvillepotential contributors are pinging me everyday to know...14:24
Zaraoooh, great! :D this channel is probably the best place for people to ask where they can help out.14:26
ttxYeah, I feel like I can't bring that spec to the next stage. Too many battles to fight. I'll likely need someone to pick it up14:26
alexismonvillettx: I thinks this particular one needs your attention :)14:27
fungiand i'm happy to help finish drafting it, but balancing with ptl duties and other commitments i've already made would be tough14:27
fungiideally someone on the tc would be a driver14:28
fungiif not the tc chair14:28
persiaFrom my reading, the main blocker is identifying the set of features that SB lacks and would need to be resolved before any migtration.14:28
ZaraI think the bits we definitely can't add ourselves are the things referred to in line 17114:28
ttxalexismonville: agree it's important. But it's also one where I bring less value than others (I'm not the main user anymore, not even representative). So I'm working within my team at the foundation to find someone to pick it up.14:28
Zarasnap14:28
persiaMaking that pretty or adding language is something many of us could do, but the list requires someone confident of OpenStack needs at a high level.14:29
Zara+ SotK and I are thoroughly biased.14:29
fungibtw, need any more help with the storyboard-dev server?14:31
fungii guess we should update the draft jobs for webclient changes to point there now14:31
Zarasotk has sent a patch for that!14:31
fungiooh! link me14:31
Zarahttps://review.openstack.org/#/c/318702/14:31
Zarahe was so fast14:32
fungiwow, recent14:32
fungii must be taking subliminal queues from him14:32
fungier, cues too14:32
* fungi always uses the wrong cue/queue14:32
Zara:) the first thing we planned to use it for was load-testing, to see how storyboard scales, so now we need to work out *how* to do that. and the other thing we were just discussing was how to clearly distinguish it from storyboard.openstack.org, so people don't confuse the two and file their bugs in the dev server.14:33
fungiyeah, some minor theming/css ought to take care of that14:33
Zarayeah, and I think that one's on us.14:34
SotKmaking it survive a puppet apply will be interesting I suspect14:34
Zara=D14:34
Zarayes14:34
fungias for 318702 i guess that will be self-testing so we can see it work correctly on the draft job once it runs14:34
persiaHow is pedroalvarez doing it for his deployment?  Can the same mechanism be used?14:34
Zarapedroalvarez uses an ansible role14:34
fungiwe probably need to roll back the cors provisions for docs-draft on production storyboard once this lands14:34
fungifor added safety14:35
* SotK expects pedroalvarez builds the webclient from source with some custom css theming14:35
SotKpedroalvarez?14:35
persiaZara: Yes, but aren't the issues with surviving puppet apply the same for ansible (in terms of branding)?14:35
pedroalvarezSotK: you are right14:35
Zaraah right, so the role is for the api14:36
persiafungi: The other topic of discussion for the dev server was data population: the suggestion was to wipe and copy production data on some schedule, possibly not copying private stories.  Do you have an opinion on the safety of that?14:37
SotKI assume the role either also does the build, or deploys the result of it14:37
pedroalvarezthe role does almos the same that the puppety thing does14:37
pedroalvarezexcept that bit, I found that branding was only possible when building the webclient from source14:37
Zarahehehe, the one thing... xD14:38
pedroalvarezand puppet scripts take a tarball from somewhere, I believe14:38
SotKyeah, they do14:38
pedroalvarezwhich is faster14:38
fungipersia: it sounds reasonable. we could add a cron job on the production server which sanitizes/filters a db dump, generate an ssh key for the storyboard user on the production server and authorize it for thr storyboard user on the dev server, allowing us to push that dump over and load it14:39
SotKfungi: that seems like a good approach to me14:40
fungipedroalvarez: for branding, we could of course add a step which replaces the default theme with a custom one. include a generic theme in the storyboard repo/tarballs and then have separate repos for other themes14:40
fungijust stick that replacement call in the deployment routine after the base tarball is unpacked14:41
* fungi is handwaving14:41
pedroalvarezo/14:41
Zarasounds hopeful, though!14:41
ZaraI want a rainbow one14:41
pedroalvarezyeah, we could do that14:41
pedroalvarezmaking them look different is key14:41
persiaAnother option (which might make pedroalvarez's life easier) would be to not have any branding in the default client code, and then have a separate branding piece that is separately deployed to each server (also helps with dev differentiation), with local references.14:42
persiaSo non-OpenStack deployments would just populate that once, and could safely consume the OpenStack published tarball for CD.14:42
Zarathat sounds more compliated, since aiui then either you end up with a client which can't run without the branding, but is split off from it-- or one with default branding, which is what we have atm (I think our default branding is just 'use red', there will always be some default colour)14:45
Zara*complicated14:46
Zaraperhaps I misunderstood it, though14:46
persiaOh, right.  In that case, maybe have the default branding be the dev-server branding, and use differentiated branding for production deployments.14:46
persiaAnd have the code look for new branding, and only fall back to the default branding in the case it does not exist.14:47
persia(so, try to load a file for the CSS: if it doesn't exist, load the default, etc.)14:47
persiaUnless I misunderstand the key branding assets are the core colours and the icons.14:47
persiaRather, just the big icon in the upper left.14:48
SotKisn't it easier to just overwrite the CSS when deploying with puppet/ansible?14:48
SotK(so deploy webclient with defaults, deploy server-specific branding on top)14:48
persiaIgnoring race conditions, yes :)14:48
Zarathis is how the theming currently works, for the curious: http://git.openstack.org/cgit/openstack-infra/storyboard-webclient/tree/src/theme14:48
SotKwhich race condition am I missing?14:48
* persia often chooses correct over effective, so is not always a good source of ways of doing things14:48
persiaSotK: A request between unrolling the tarball and applying the branding change could potentially deliver the incorrect branding.14:49
*** jamesmcarthur has quit IRC14:49
persiaMaking that happen requires precise timing, and a refresh would probably fix it for anyone not aggressively caching.14:49
SotKhm, true14:50
pedroalvarezunpack on a temporary place, re-brand, move to producition place14:50
persiapedroalvarez: Excellent workaround.  Much less can break than the complicated scheme I outlined before.14:51
Zara:) especially since aiui re-branding is putting 'brand-primary' in a file in the custom folder (and possibly something called favicon.ico to overwrite the default) which sounds automatable.14:56
Zara(http://git.openstack.org/cgit/openstack-infra/storyboard-webclient/tree/src/theme/custom )14:56
SotKyeah, things in src/theme/custom/theme.less override things in src/theme/base/theme.less (I think those are the paths)14:58
SotKthe build-from-source requirement is because we compile those .less files into one big css file to serve14:58
Zarayup, the default storyboard branding comes from here atm: http://git.openstack.org/cgit/openstack-infra/storyboard-webclient/tree/src/theme/storyboard (so really it's line 12 of the theme.less, and the favicon)15:03
Zara^ that's for general reference, in case anyone's interested15:04
Zara(just wanted to make it clear that this isn't a case where the storyboard code itself has branding tied up in with the webclient functionality; it's already designed to be overwritten with custom things.)15:05
persiaYeah, the branding support went in a couple years ago: I think the only confusion comes from the compiled CSS importing the branding, such that if one isn't building from source, one has more difficulty overriding.15:07
persiaThe complicated suggestion came from that, the idea being that if custom branding assets exist on the server, those should be used, even after building the one-big-css file.15:08
persiaBut I think I like the rebrand-post-deployment-then-move-into-place model better, in terms of number of moving parts, etc.15:09
* SotK too15:10
Zarayup15:10
persiaso, the tricky part there is how: does one insert custom branding and rebuild the CSS, or modify the generated CSS directly in the branding step?15:11
Zarainsert, rebuild is probably easier15:11
persiaAnd if the latter, does it make sense to have the custom branding override in the code?15:11
persiaDoes that change the requirements on the server?15:12
*** mrmartin has joined #storyboard15:12
persiaI remember a discussion about the architecture being about trying to reduce server requirements, so one just delivered dumb files to be served by apache, and didn't need to have npm on the server.15:12
persiaBut if the less needs to be rebuilt, that changes things.15:12
* persia notes that remembered discussions about branding are but poorly remembered and date from 2014, so may no longer be particularly relevant15:16
ZaraI feel like npm isn't a big requirement these days, could be wrong15:17
* SotK would like to have a way to do it without npm on the server15:17
SotKI don't yet know what that way is though15:17
*** jamesmcarthur has joined #storyboard15:18
*** mrmartin has quit IRC15:18
Zaraaw, I think the drafts patch needs a recheck15:19
*** jtomasek_ has quit IRC15:19
persiaFor no-npm-on-server, I see two ways.  A) have a build stage for each deployment that applies branding, B) have the branding overrides be exposed in the CSS so that magic extra files on a server cause brand overrides with no rebuild (requires separated repos)15:19
SotKZara: looks to have worked though looking at the js-draft :D15:19
SotKI'd prefer the extra repos way, but I expect it to be messy15:20
Zarabear in mind at this point this is a 1 line change.15:21
SotK?15:21
Zarafor the way we'd change the branding, if we're currently just doing it to make sure dev looks different to prod, that's one variable that is changing value to a different hex.15:22
SotKhmm, maybe we can allow config.json to be set up via puppet, and pass extra css file paths with that15:22
SotKthat's why I think extra repos would be messy15:22
*** jamesmcarthur has quit IRC15:23
persiaI think extra repos would also mean pulling out the existing theme support (because it doesn't work so well in production), and refactoring the theme-relevant attributes out into the smallest file possible, so that most of the CSS would just work.15:24
SotKyep15:24
Zaragrr, more recheck16:06
*** xenthree3 has joined #storyboard16:07
*** xenthree3 has left #storyboard16:07
openstackgerritPedro Alvarez Piedehierro proposed openstack-infra/storyboard-webclient: Close card-details modal when clicking on the Story link  https://review.openstack.org/31877916:54
Zara:0 a wild pedro appears!16:55
pedroalvareznot sure if you would consider this a bug, but here it is16:55
pedroalvarezSo, you go to a board, open a card modal, click on the Story link, and the card modal remains open16:56
Zarahaha, no, I do consider that a bug. never caught it because I always open the link in a new tab16:56
ZaraI can see how someone might prefer the modal to stay up, but that's not behaviour I'd intend16:56
ZaraI'll test that patch now, thanks16:57
pedroalvarezno worries :)16:57
pedroalvarezI found the behavior annoying, that's why I patched it16:57
pedroalvarezbut as always, open to discussion16:57
Zarayeah, I like the change, anyway. :) all the information contained in the card, except due date, is available on the detail page anyway, so there's not really a good reason to keep both open by default (and users can still just open the story in a new tab if they want the card details visible)17:01
pedroalvarezI/me nods17:07
* pedroalvarez too17:07
openstackgerritPedro Alvarez Piedehierro proposed openstack-infra/storyboard-webclient: Close card-details modal when clicking on the Story link  https://review.openstack.org/31877917:20
pedroalvarezthanks for the review17:21
pedroalvarezchecks seem to be failing for that patch, though17:22
openstackgerritZara proposed openstack-infra/python-storyboardclient: WIP Proof of Concept Storyboard Updating from Gerrit  https://review.openstack.org/30291217:23
openstackgerritPedro Alvarez Piedehierro proposed openstack-infra/storyboard-webclient: Close card-details modal when clicking on the Story link  https://review.openstack.org/31877917:23
Zarayeah the js-draft patch from earlier needed a recheck, so it might just be that17:24
ZaraI just updated the gerrit patch with my comments on where it was going, it's still a total mess17:24
ZaraI thiiiink the control flow is working, now (famous last words)17:25
Zarathough hard to test since it has no sensible error-handling, so errors out before I can check if it's updating every time it should :P17:28
*** mrmartin has joined #storyboard17:32
Zarayeah, it looks like the control-flow works. had the events stream open in one tab, had my api in another, refreshed page each time events stream updated, task notes changed to match commit message17:33
*** mrmartin has quit IRC17:36
Zaraso it doesn't yet seem able to handle things of this type: {"project":"openstack/keystone","ref":"refs/changes/07/317007/6","targetNode":"git07.openstack.org","status":"succeeded","type":"ref-replicated","eventCreatedOn":1463679432}17:38
Zarato use a sample event17:38
Zaraprobably because there is no 'change' field17:39
Zaraso that script needs something to the effect of 'if change is none, don't freak out'17:39
Zarawell that's enough idiosyncratic pseudocode for one day, night!17:40
pedroalvarezdoes it drop an error like "ValueError: too many values to unpack"17:40
pedroalvarez?17:40
Zarano, I get TypeError: 'NoneType' object is not iterable17:41
pedroalvarezahh, yes17:41
pedroalvarezwe can solve that problem too :)17:41
Zaraso yeah, atm it goes 'if the key is 'change', do stuff-- and there's no 'else' :D17:41
Zaraso it just goes 'oh, okay, guess I'll stop then'17:42
Zarahaha, I just saw your comments in the stream events! that's fun17:50
ZaraI'll look more at it tomorrow, anyway, thanks for taking time to have a look at it17:50
pedroalvarezhahah17:50
pedroalvarez:)17:50
pedroalvareznight17:50
Zaranight :)17:50
*** lifeless has quit IRC18:26
*** lifeless has joined #storyboard18:26
*** sparkycollier has quit IRC18:31
*** sparkycollier has joined #storyboard18:33
*** jamesmcarthur has joined #storyboard20:41
*** jamesmcarthur has quit IRC20:50
*** jamesmcarthur has joined #storyboard20:52
*** jamesmcarthur has quit IRC21:02
*** jamesmcarthur has joined #storyboard21:08
*** jamesmcarthur has quit IRC21:13
*** jamesmcarthur has joined #storyboard22:09
*** jamesmcarthur has quit IRC22:14
*** jamesmcarthur has joined #storyboard22:17
*** jamesmcarthur has quit IRC22:18
*** jamesmcarthur has joined #storyboard22:28
*** jamesmcarthur has quit IRC22:49
*** jamesmcarthur has joined #storyboard23:12
*** jamesmcarthur has quit IRC23:17

Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!