15:00:33 #startmeeting storyboard 15:00:34 Meeting started Mon Jun 16 15:00:33 2014 UTC and is due to finish in 60 minutes. The chair is krotscheck. Information about MeetBot at http://wiki.debian.org/MeetBot. 15:00:35 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 15:00:37 o/ 15:00:38 The meeting name has been set to 'storyboard' 15:00:41 Roll call! 15:00:47 \o 15:01:20 hi 15:01:31 #topic Validate Project and Project Group Names. 15:01:52 I added it to the agenda because Nikita mentioned we shoudl discuss it at the meeting 15:02:05 so, yep 15:02:05 Righto, so what’s the summary? 15:02:08 #link https://review.openstack.org/#/c/98728/ 15:02:42 * krotscheck is reading 15:02:58 The idea of making projects' names shorter is not that simple as it looks like 15:03:07 o/ 15:03:27 ttx said we should keep full names with a slash inside 15:03:29 Was that a goal of project group? I thought it was more of an arbitrary organization thing. 15:03:33 I think validating project and projectgroup names is good -- I just don't think we can assume that the / in there aligns to projectgroup boundaries 15:03:54 it means we cant use this name in a url 15:04:08 so let's take an example 15:04:46 we have the storyboard API project. It maps to a repository called openstack-infra/storyboard. It belongs to several project groups, including "Infrastructure" and "All of Storyboard" 15:05:09 What should the "project name" be ? 15:05:54 should the name be the git repo name ? 15:06:02 (that's what it currently is) 15:06:02 to elaborate on ttx's point (which i agree with), the '/' in git repo names is more or less ignored by gerrit -- there is no hierarchy there. the only place that assumes that kind of hierarchy is github (which is an ancillary tool; not something that storyboard is designed for tight interaction with (though it should be _compatible_) 15:06:23 ) 15:06:38 I think one project = one git repo, so the name should be the same 15:06:42 * krotscheck thinks that the git repo should be a property of a project, but not tightly coupled to the name/title 15:07:03 btw' are there projects w/o repos? 15:07:07 krotscheck: that would work as well. The name would be an alias 15:07:14 there have certainly been a request for them recently 15:07:20 like "Storyboard API side" -> openstack-infra/storyboard 15:07:26 o/ 15:07:49 I'm fine with that, as long as we keep the 1:1 mapping 15:07:51 yah. and project groups were to encode that storyboard and storyboard-webclient are really both parts of "Storyboard" 15:07:55 ttx: Right - OpenStack would just happen to have the convention that project name == gerrit name. 15:07:58 Because that’s easy to remember. 15:08:02 (1:n being modeled by projectgroups, basically) 15:08:28 krotscheck: +1 15:08:48 so Nikita's point is that "/" make unfriendly URLs 15:09:05 although gerrit survives them alright 15:09:18 NikitaKonovalov: There aren’t any right now, because (I think) jeepyb currently autocreates a repo whenever we add a project. There’s been a request for them though, just a lack of teaching jeepyb to do that thing we want it to. 15:09:57 krotscheck: yah. and also, lack of clarity if we _should_ support that or not 15:10:05 so he would prefer excluding "/" from project names, and goes on to use "/" as a way to separate projectgroups and project names at autocreation time 15:10:12 or if we should assume that something should get a git repo even if it doesn't use it 15:10:27 I think we should just accept "/" in project names. 15:10:27 Angular doesn’t care about /’s in the URL, because it handles its own URL parsing in everything after the ‘#’. I think WSME/Pecan care though. 15:10:31 mordred: That too 15:10:41 ttx ++ 15:11:14 krotscheck, I think Pecan will ignore it after # 15:11:29 we are not passing anything with a # to pecan 15:11:35 so it should never know 15:11:36 SergeyLukjanov: It will, but all of our API requests are pure URI's. 15:11:46 #! routing is a javascript thing only 15:11:50 krotscheck, oh, it was bad idea ;) 15:12:16 it seems slightly wasteful+confusing to do that; i think my inclination would be to not create a repo unless one is actually desired 15:12:18 The alternate solution would be to use a simplified project name for every project (and have the repo name in a field) 15:12:26 jeblair: yah. same here 15:12:30 StoryBoard -> openstack-infra/storyboard 15:12:45 If we are going to request projects by name from pecan, then simply escape all slashes or whatever 15:12:51 StoryBoard Webclient -> openstack-infra/storyboard-webclient 15:12:56 ttx: that seems reasonable and compatible with krotscheck's suggestion of a few mins ago 15:13:09 NikitaKonovalov: I can do that. 15:13:11 It would certainly increase readability 15:13:40 although that space i nthe second example is begging for abuse 15:13:58 storyboard-api -> openstack-infra/storyboard 15:14:04 ttx: Maybe in titles, but we do want the ability to type in storyboard.o.o/#!/project/openstack/superpants 15:14:11 storyboard-webclient -> openstack-infra/storyboard-webclient 15:14:14 dunno 15:14:24 Ok, so here’s what I got from NikitaKonovalov’s suggestion 15:14:26 I think I probably do 15:14:32 krotscheck: "openstack/" has no value in there 15:14:33 I mean, I could be wrong though 15:14:44 but I'm _really_ used to config's name being openstack-infra/config 15:14:45 ttx: It does, because it maps to gerrit 15:14:46 so as a convention, we have required that project names be globally unique (not just within their github-org) 15:15:08 it would be weird to me to type storyboard.o.o/#!/project/config 15:15:33 hmm, I think I just prefer we bite the bullet and use the repo name 15:15:38 but I can also get over that if it makes everythign hard 15:15:49 So, mapping #!/project/name-with-slashes to /v1/api/projects/escaped-name-with-slashes is easy 15:15:58 krotscheck: agree 15:16:17 Which means that in the URL, we use the git repo name because of convention. 15:16:29 Sorry, not git repo name, you know what I mean 15:16:31 With the slashes 15:16:46 jeblair: so in theory we could say "storyboard" and have a field that is called github-org and that is used to build the full repo name 15:16:48 It just happens to be the title, because that’s what OpenSack convetion is all about 15:17:12 gerrit uses: GET /a/changes/openstack-infra%2Fconfig 15:17:24 Perfect 15:18:24 Ok, so if it turns out that our naming validation on projects and project groups is : “Anything, you just have to escape it”, does it make sense to have any API-side validation at all? 15:18:27 ttx: as long as it isn't called "github" org, but just "org" or something -- but i think it would be better to ignore it as much as possible so we can support 0-N levels of hierarchy 15:18:43 jeblair: +10000 15:19:18 the second part of this is Should the prefix be treated as a project group or as an origanization field for a project? 15:19:20 jeblair: I for one don't look forward to having new SB/gerrit mapping tables to replace the LP/Gerrit ones 15:19:40 NikitaKonovalov: Neither, I think. If it’s a string, then the full title is the string. 15:19:43 so I'm fine with using repo names directly 15:20:34 krotscheck: agree 15:21:15 My only gripe with using full repo names is that they eat valuable space, but I'm pretty sure we can optimize that. Like if there is what appears to be a github-org prefix, display it nicely 15:22:45 ok, then we keep the titles as they are, and the only thing needed to support them in urls is making projects API work with names 15:22:48 What’s the full repo name thread about? I thought we were talking about names, where the project name will be ‘openstack-infra/storyboard’ by convention. 15:23:29 krotscheck: it's an orthogonal discussion, ignore me. i'll be back with it 15:23:43 ttx: Okie 15:23:48 Summary: 15:23:58 Project names are going to be escaped when they hit the API 15:24:17 And we need to make them unique. 15:24:28 Groups are not going to be automatically inferred from project names. 15:24:56 And the webclient will start using unescaped-project-name and parse it to escaped-project-name. 15:25:02 Did I miss anything? 15:25:22 krotscheck: that seems like an excellent summary 15:25:33 Any disagreements? 15:25:40 names are already unique by constraint https://github.com/openstack-infra/storyboard/blob/master/storyboard/db/models.py#L141 15:25:54 +1 15:25:57 +1 15:26:20 Cool, let’s move on. 15:26:30 #topic Specs 15:27:00 Go talk about specs in the specs repo! 15:27:09 krotscheck, +1 re prev point 15:28:08 So we have three specs out there: Tagging, Search, Subscriptions 15:28:28 The first two are still under active discussion, the latter seems to have settled? 15:28:38 I wouldn’t mind having mordred or jeblair look at it though 15:28:47 krotscheck: I had a question about your comments on tags 15:28:53 Or, well, anyone form infra-core who’s familiar with how queues break down when under load. 15:29:01 Ok, let’s talk about tags! 15:29:05 #topic Spec: Tags 15:29:17 What’s up? 15:29:30 tags like lazer tag? 15:29:39 cause that's fun 15:29:44 krotscheck: tags are keywords, and you seem to hint you'd like to use them as a more generic name/value thing 15:29:46 krotscheck: looking forward to it, thanks 15:30:47 a property that could be attached to any object 15:30:48 ttx: Generic, yes. Name/value no. I’m starting to see them as our associations. 15:31:20 So, for instance, if there are several people working on a task, that is represented at two tags that link task-to-user 15:31:37 krotscheck: that's quite different from what I'm proposing. I'm not sure we can tweak my proposal until it does that instead of what I had in mind 15:32:19 is it possible you're each talking about different features and both of them happen to be called "tag" ? 15:32:29 maybe you should draft a separate one to explain what you start to see... it certainly sounds more ambitious than my lowly Launchpad tag equivalent 15:32:33 mordred: That’s what I’m thinkign 15:33:04 ttx: ++ 15:33:16 "My" tag is just about assocaiting keywords to stories, to get the same functionality we have with LP bug, a feature that we've come to rely on 15:33:28 like "this is a gate bug" 15:33:39 mordred: ++ 15:33:44 associating them to stories let us get the benefit for bugs *and* blueprints. 15:33:50 or low-hanging-fruit, etc 15:33:56 yah. low-hanging-fruit 15:34:02 although I still dont' think we use that one well 15:34:03 it's just a loose way to allow free-form categorization 15:34:10 mordred: mostly because we don't use bugs well 15:34:38 krotscheck: that's what my spec is about... so i'm not sure how I should address your comments 15:34:48 I still think they can be one and the same, but I’ll happily write up a spec to explain what I’m trying to accomplish. 15:35:23 krotscheck: and i'll happily read it. As long as we can get the same functionality I'm looking for, I'm certainly open to an implementation that opens up more possibilities 15:35:33 Works for me :)( 15:35:35 :) 15:35:53 the trick generally being... opening those extra possibilities without making the basic one unusable :) 15:35:53 Honestly, I think that what you want is the first step to what I want. 15:36:24 krotscheck: cool, we could even approve BOTH specs! 15:36:32 MADNESS 15:36:42 zomg 15:36:45 Ok, so action for me: Write a generic tagging spec. 15:37:06 We’ve got the search spec out there as well, anything you want to discuss NikitaKonovalov? 15:37:45 the main discussion there is what should the query look like 15:38:10 krotscheck: if there is time at the end of the meeting, i'd like to present https://wiki.openstack.org/wiki/StoryBoard/Roadmap again 15:38:16 since last week it was just Nikita and me 15:38:37 ++ 15:38:55 we can keep discussing it there 15:38:56 ttx: kk 15:38:59 ALright 15:39:04 #topic Ongoing work 15:39:19 Today in REVERSE ALPHABETICAL ORDER 15:39:42 yolanda’s not here, she’s working on timestamps and date display, and sent me a directive that I need to debg 15:39:48 ttx? 15:39:51 The roadmap is basically taking the Juno etherpad, but I added a new milestone based on a suggestion from mordred. I think it nicely splits the MVP 1.2 work into more manageable chunks 15:40:01 #link https://wiki.openstack.org/wiki/StoryBoard/Roadmap 15:40:18 eek. giving me credit for ideas is scary 15:40:37 so, use openstack projects drop blueprints first, before bugs 15:40:46 we basically implement the features needed to get integrated projects to use StoryBoard for feature planning, before the ones needed to get them to use it to track bugs 15:41:09 sounds reasonable, and i like the ramp-up aspect to it 15:41:10 it's just a sane way to prioritize that big chunk of features 15:41:20 Makes sens 15:41:23 not sure how many projects will take the bait 15:41:39 but in all cases that chunk was just too big, so splitting it made sense 15:41:42 ttx: we pretty much have to tell people not to use storyboard all the time. :) 15:42:06 krotscheck: I'm pretty sure you completed a few of those 1.1 lines, so feel free to edit that wiki page 15:42:17 can I disagree with two of the thigns on that wiki? 15:42:36 mordred: hey, it's a wiki. OH WAIT WHAT? 15:42:59 * krotscheck has tried to get mordred not to disagree on other things without much success. 15:43:07 "task ordering" - blueprints doesnt have that right now 15:43:10 * krotscheck apparently likes his triple negatives, too. 15:43:18 mordred: they actually havce 15:43:23 and we use them? 15:43:23 mordred: yeah, work items 15:43:27 mordred: it's called work items 15:43:30 and we use them? 15:43:30 i just saw them used the other day 15:43:34 oh. ok 15:43:39 nevermind then 15:43:44 mordred: we don't really use blueprints! So that's unfair. 15:43:45 mordred: i was like "oh yeah, that exists" :) 15:43:48 I didn't think openstack used them 15:44:05 mordred: but I see your point 15:44:22 I guess what I'm trying to say is that we dont need to be feature complete with blueprints -we need to be feature complete with our incomplete usage of them 15:44:25 it's just that to make a set of tasks useful in a blueprint setting, you kinda need to be able to order them 15:44:42 sure 15:44:45 to be feature complete with blueprints you'd have to allow only a single task in a blueprint story. 15:44:53 FYI, I’m cutting this discussion off in 5 minutes, we need to give time for NikitaKonovalov and I to give summaries. 15:44:58 yeah, i think task ordering makes the cutoff for "usable with, borderline-unusable without", especially for a significant story 15:45:24 (without it, people would probably have to duplicate the info in the description to get it ordered) 15:45:31 jeblair: ++ 15:45:38 I think I'm good with the wiki description in general then 15:45:39 that's all I had. tried to spend time on reviews last week. Will do more. 15:45:51 Thanks, ttx- we did land some good ones. 15:45:51 although I think we need bulk import before 1.2.1 ... but that's not what we're talking about 15:46:28 Ok, so summary of the roadmap: Task ordering is something we want? 15:46:31 yeah, that's in 1.1.1, but i think it may need to be in 1.1 15:47:22 jeblair: oh! my bad. I was equating "bulk import" from the future with "lp data import" 15:47:24 * mordred shuts up 15:47:27 krotscheck: I've been busy with my university graduation last week, and we had holidays is Russia 15:47:39 NikitaKonovalov: You graduated? 15:47:45 pretty much 15:47:45 NikitaKonovalov: AWESOME 15:47:51 NikitaKonovalov: congratualtions! 15:47:53 and I thought French people were the only ones to have holidays 15:47:54 * krotscheck puts on a party hat 15:48:03 krotscheck: you arent' still wearing one? 15:48:25 so I was updating my Search spec and will continue doing that 15:48:32 mordred: no, there was a very insistent gentleman who took it off with his teeth. 15:48:41 * krotscheck has no idea why 15:48:44 oh my 15:48:54 NikitaKonovalov: Ok. I’m starting to work on the UI section of search btw. 15:48:57 So about that. 15:49:17 I discovered thu/fri that there’s actually enough search-like functionality in storyboard to build out the UI I had in mind for search 15:49:32 ooh neat 15:49:47 So I’m working on that, and the mulit-resource search and routing is already all there. 15:49:58 The missing piece is the advanced input field 15:50:13 So you can search via the header, but that search string isn’t persisted into the actual search UI 15:50:29 I’ve been doing that because my work on subscriptions is currently pending on config review 15:50:42 First this one: https://review.openstack.org/#/c/98007/ 15:50:48 Then this one: https://review.openstack.org/#/c/98474/ 15:51:41 The first one grew out of the openstack-ci/puppet-storyboard disucssion where I’m tying to bring the two modules in sync with each other so we can eventually move infra over to the one in openstack-ci 15:52:14 And in reality, the approach I’m taking is ‘doing a lot of work in infra-config, and then copying it over to openstack-ci 15:52:20 what's openstack-ci? 15:52:41 jeblair: Argh 15:52:47 do you mean openstack-infra? 15:52:48 jeblair: That’s be being stupdi 15:52:51 Yea 15:53:02 Eventually all that work will land here: https://review.openstack.org/#/c/96290/ 15:53:28 okay, i'm confused because aren't we running the puppet that's in openstack-infra? 15:53:36 jeblair: yes 15:53:43 Which I thought was a bit confusing too. 15:53:47 or do you mean moving from openstack-infra/config to openstack-infra/puppet-storyboard? 15:53:54 yes 15:54:01 that's a plan i'm fully in support of :) 15:54:09 Right 15:54:19 so the idea is to make all of the changes you would make to make a standalone module _in_ the config tree 15:54:20 I would like to get the puppet module cleaned up a bit before moving over to puppet-storyboard though 15:54:31 krotscheck: that's a fine idea 15:54:32 then land that as a patch to the empty puppet-storyboard repo 15:54:36 And then to copy it all over. 15:54:39 yes 15:54:39 yup 15:54:43 Right. 15:54:44 this is excelelnt plan 15:54:52 So: Step one - https://review.openstack.org/#/c/98007/ 15:54:59 Step two: https://review.openstack.org/#/c/98474/ 15:55:13 Step three: copy step one and two to https://review.openstack.org/#/c/96290/ 15:55:32 Though technically step two can happen anywhere 15:56:04 * krotscheck is a little worried about the maount of work he’s already put into subscriptions without having the spec approved. 15:56:09 But that’s my summary 15:56:19 #topic Open Discussion 15:57:21 krotscheck: I haven't followed the rabbit things ... which thing should I read to learn more about that? 15:57:44 mordred: https://review.openstack.org/#/c/95307/ 15:57:54 mordred: Subscription spec 15:57:54 thank you 15:58:54 ANy other open discussion topics? 15:59:32 Alright, let’s call it :) 15:59:37 #endmeeting