18:00:03 #startmeeting keystone 18:00:03 Meeting started Tue May 23 18:00:03 2017 UTC and is due to finish in 60 minutes. The chair is lbragstad. Information about MeetBot at http://wiki.debian.org/MeetBot. 18:00:04 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 18:00:06 The meeting name has been set to 'keystone' 18:00:11 ping ayoung, breton, cmurphy, dstanek, edmondsw, gagehugo, henrynash, hrybacki, knikolla, lamt, lbragstad, notmorgan, rderose, rodrigods, samueldmq, spilla, aselius 18:00:16 o/ 18:00:18 hey 18:00:20 o/ 18:00:27 #link https://etherpad.openstack.org/p/keystone-weekly-meeting 18:00:28 o/ 18:00:41 o/ 18:01:01 o/ 18:01:10 o/ 18:01:44 #topic Updating keystone's documentation theme 18:02:03 ping Samriddhi ? 18:02:15 asettle: ^ 18:02:21 I put it on there just in case there is no reason to do this 18:02:43 Samriddhi is making the changes 18:02:46 gagehugo: ah 18:03:17 gagehugo: i haven't seen these changes yet - is this the new theme for all projects to move to? 18:03:33 I think so 18:03:35 can I add a doc convo after the theme discussion? 18:03:58 rodrigods: sure 18:04:04 cool 18:04:06 rodrigods: we should be able to get through all the topics today 18:04:27 gagehugo: has the general direction of moving to this new theme be documented somewhere? 18:04:38 lbragstad no idea :( 18:04:46 o/ i'm late 18:04:49 gagehugo: ah - no worries 18:04:50 idea was more to just bring this to our attention 18:05:03 gagehugo: if it is - it would be nice to track that down so that we can include it in the commit 18:05:17 gagehugo: i can leave a comment 18:05:23 lbragstad sounds good 18:05:48 there is a comment saying that the plan is to get all project using this theme on that change 18:05:59 hi, sorry I am late 18:06:03 but idk where there is documentation for it 18:06:07 the new theme is much nicer, btw 18:06:13 rodrigods ++ 18:06:15 material design? :) heh 18:06:18 sweet - i let a comment 18:06:33 we can iterate on it in review - thanks gagehugo for bringing it up 18:06:42 sounds good! 18:06:46 #thanks https://review.openstack.org/#/c/466066/ 18:06:48 oops 18:06:50 #link https://review.openstack.org/#/c/466066/ 18:07:07 rodrigods: do you want to do your topic now? 18:07:08 lbragstad ^ I think I added you to the review, but I should have pinged you on IRC 18:07:14 lbragstad, sure! 18:07:19 speaking of docs... 18:07:27 rodrigods: sure - go for it 18:07:43 please take a look at https://review.openstack.org/#/q/status:open+project:openstack/keystone+branch:master+topic:tests_development_docs 18:07:59 no reviews for a while 18:08:14 #topic review requests for functional testing documentation 18:08:23 #link https://review.openstack.org/#/q/status:open+project:openstack/keystone+branch:master+topic:tests_development_docs 18:08:26 rodrigods: ++ 18:08:31 thanks lbragstad 18:08:40 rodrigods: thank you for the reminder 18:08:52 rodrigods: is there anything else you need on that front besides reviews? 18:09:19 lbragstad, i think reviews are enough 18:09:30 specially for those who haven't touched the functional tests 18:09:42 rodrigods: cool - thanks 18:09:48 #topic Microversion header bug 18:09:54 #link https://bugs.launchpad.net/keystone/+bug/1689644 18:09:56 Launchpad bug 1689644 in OpenStack Identity (keystone) "Keystone does not report microversion headers" [Undecided,New] - Assigned to Jaewoo Park (aselius) 18:09:57 nhelgeson: o/ 18:10:09 o/ 18:10:19 o/ 18:10:37 uh 18:11:04 So I have been working on finding a way to implement versioning in the header 18:11:05 I reported that based on the convo at the summit 18:11:23 I really don't care about it, but wanted to make sure we didn't lose the concept 18:11:24 and I was wondering about where the code should be added 18:11:43 I found a way to add some version info in the header 18:11:45 nhelgeson: ayoung ah - this must have been in the microversion session? 18:11:49 so I can leave it at that for now 18:11:52 nhelgeson, yep 18:11:59 nhelgeson: do you have a patch up for review? 18:12:03 not yet 18:12:10 I don't know that I really care, but at the PTG all the keystone cores seemed pretty anti-microversions 18:12:21 we should probably put it in common/WSGI.py somewhere, right? 18:12:34 thats where I am looking at the moment 18:12:41 edmondsw I think it was more we don't really "need" them atm 18:12:44 ayoung: most likely, or the common controller layer at the very least 18:12:53 edmondsw, I think the reason they wanted it was so that a common client code could be written for the others and for Keystone 18:13:09 i sent a link on irc the last time this was asked, let me look it up 18:13:11 probably the right thing to do, not a burning issue 18:13:31 there are pretty good arguments that microversions are a mistake and make things more difficult for users rather than less... 18:13:49 robcresswell: has a bunch of opinions on them 18:14:03 right now im looking at adding a few lines to the render_response on line 746 18:14:05 which he represented at both the PTG and forum 18:14:34 #link https://github.com/openstack/keystone/blob/1c44a3a1af5a9e3e48f6799b3006f02dada3341f/keystone/common/wsgi.py#L710 18:14:59 just figuring out how to include the request version in the header 18:15:24 edmondsw, I'm kindof of the mindset that at least we should be consistent, that there is very little completely right about our APIs anyway 18:15:34 nhelgeson: feel free to propose something for review 18:15:53 ill post a fix by the end of the week 18:15:57 but this doesn't require us to *implement* microversions does it? 18:16:10 I *think* dtroyer was working on making some of the code more common. 18:16:14 lbragstad, just "report" I think 18:16:19 Which alleviates one of my issues with the implementation, at least. 18:16:21 ayoung: ok - good 18:16:22 at this point is is just going to report the current version and let you know if its current or now 18:16:32 no, this is just for returning the version of our api 18:16:34 not* 18:16:39 we can probably manually set a number, and just keep bumping it for now, kindof like what we do elsewhere 18:16:59 yeah 18:17:03 ayoung: thats the feel i got too 18:17:12 at least until we figure out what our strategy is long term 18:17:47 I was planning on going a step further and getting the version request from the url and checking to see if its v1 v2 or v3 18:18:06 and then reporting which one is being used and specifying it as current vs depricated 18:18:07 nhelgeson, take it as far as you can. We'll review. 18:18:11 ok 18:18:31 nhelgeson: we can address those bit in gerrit, too 18:19:15 all good? 18:19:19 nhelgeson: is there anything else outside of that? 18:19:19 nhelgeson: that might be unnecessary given that controllers for v3 subclass v3controller 18:19:30 so they have a common base class 18:19:37 Yeah, just returning the version and making cp happy wouldn't hurt 18:19:41 nope 18:19:45 cool 18:19:47 ill post something in gerrit 18:19:53 nhelgeson: ++ 18:19:56 #topic Project Tag Spec 18:19:58 and we can go from there 18:20:03 #link https://review.openstack.org/#/c/431785/ 18:20:06 gagehugo: o/ 18:20:12 So, tags are very like labels in Kubernetes 18:20:37 last i checked cmurphy had a couple comments on that spec 18:20:55 so did samueldmq 18:21:02 who's looking for that? 18:21:21 I guess it's been a while, but if it's something people want and it's the best way I wouldn't be against it 18:21:29 samueldmq: who wants tags? 18:21:29 I think I am for it 18:21:50 lbragstad yeah we made some updates, hadn't touched it since before the summit 18:21:51 it provides users a non-hierarchical way to organize projects, and people have asked for that for a while. 18:22:25 I did have a suggestion that we call them labels to be consistant with Kubernetes, but since we really are not anywhere else, its a small thing 18:22:40 gagehugo: i'll review it again 18:22:53 I think other places in OpenStack, e.g. nova, use the "tags" term 18:22:55 lbragstad: yes, who wants it 18:23:10 samueldmq: gagehugo has proposed it for a couple releases now 18:23:21 edmondsw yeah, this spec closely follows the API-WG one for having resource tags 18:23:28 edmondsw: yeah - so does neutron i think 18:23:33 for easing management when you k's of projects correct? 18:23:56 yep 18:24:04 samueldmq yes 18:24:12 nice, so perhaps nobody is against it, pretty much a "hey, review it" 18:24:12 any lessons learned we sould apply here? 18:24:13 samueldmq: yeah - like i could take projects hosting my production app with a 'prod' tag for example 18:24:32 lbragstad: that way you could easily create groups of projects 18:24:34 Ah...I remember the trick 18:24:35 i found the API-WG guidelines to be really helpful when reviewing gagehugo proposal 18:24:41 "who owns the label" 18:25:00 ayoung: the project 18:25:01 ? 18:25:05 project owns the label, applied by admins 18:25:07 i think 18:25:17 knikolla: that's how I see it too 18:25:18 ayoung: last i remember, we wanted that to be owned by the person who has the ability to create and modify projects 18:25:19 let me try that again. 18:25:33 lets say I have a label called "production" 18:25:37 knikolla: only by default 18:25:40 can anyone add that label to their project? 18:25:45 knikolla: if someone wants to change it they can 18:26:05 but by default, regular users shouldn't have the ability to list tags on a project 18:26:09 ayoung: no 18:26:27 and it only make sense to add tags 18:26:32 if you have the rights to list projects 18:26:34 ok, then who? 18:26:35 lbragstad: yes, updating policy they can restrict or open it up as much as they want 18:26:48 because that's where filtering projects by tags will be useful 18:27:02 samueldmq ++ 18:27:04 ayoung: I'd say domain and cloud admins 18:27:17 sure - i agree that would be useful 18:27:28 but we don't have that worked into our default policy yet 18:27:44 we recently found a project from a class project of a year ago just sitting there. tags would have been useful 18:28:20 i was thinking that the required role to add and remove tags would be equivalent to the default we use for projects 18:28:35 I suspect ability to create tags, to add a tag to a project, and to remove tags will all come up in RBAC discussions in the future 18:28:39 lbragstad i.e. admin, not looking at scope? 18:28:46 ayoung probably 18:28:59 ayoung ++ 18:29:09 edmondsw: what do you mean? 18:29:28 lbragstad, global admin 18:29:35 lbragstad today's policy allows any admin to create/edit/delete projects 18:29:37 admin + is_admin_project in newspeak 18:29:51 ++ 18:30:08 should tags be considered domain-specific? 18:30:12 sure - https://github.com/openstack/keystone/blob/master/keystone/common/policies/project.py#L20 18:30:33 I don't recall whether there is a scope check in the code yet 18:30:37 i.e there may be a prod tag on projects in two different domains, but they don't mean anything? 18:30:41 there should be... but probably isn't 18:30:42 er 18:30:47 they are not related to each other? 18:31:01 then there's the question of whether an admin of a project should be able to change the tag for their project... or only admins of the parent of that project 18:31:12 well just as assignments we may allow project tags to cross domains boundaries? 18:31:17 I'd probably lean toward the latter 18:31:33 edmondsw: only admins of the parent i would say 18:31:39 initially 18:31:49 just like I'd say that when we get into adding scope checks, you should only be able to create projects under a project/domain that you admin 18:31:51 eventually it would be nice if that changed as policy evolves 18:31:58 are we talking about rbac for the future? or for now 18:32:01 none of that's there today, though 18:32:04 edmondsw yes 18:32:21 are tags inherited when you make a child project? 18:32:45 ayoung good question... probably not? 18:32:46 i would rather restrict the feature (by default) to global admin usage than open up security issues by allowing it to be used by project level assignment 18:32:47 ayoung: i would lean towards no. 18:32:55 Will tags be used for quotas? 18:32:55 ayoung: i wouldn't think so 18:32:57 lbragstad: I'd start it simple now and say it's like a project update call/same protection? 18:32:59 ayoung: no 18:33:09 and then we evolve it later as policy keeps improving 18:33:11 all those responses are lies. 18:33:17 of course they will be used for quotas 18:33:28 we are going to be burnt by this. 18:33:33 Lets do it! 18:33:38 ayoung how would they be used for quotas? 18:33:54 edmondsw: tagging the project with the quota as the tag 18:34:05 edmondsw, why wouldn't they be used for quotas? Because we tell people not to? They will ignore us. 18:34:06 per-tag-quota-driver 18:34:37 I'm not following... what would enforce a tag value as a quota? 18:34:38 oh god please no. let's just do unified limits already 18:34:50 knikolla: right 18:35:13 edmondsw: as an admin i could manage tags on a project for `vcpu_limit:50` 18:35:17 let me step a bit back, why is project tags better than organizing projects in a tree? 18:35:20 Heh. 18:35:28 samueldmq, it is in addition to a tree 18:35:34 the dangerous part is if projects build on it to enforce quota in other services 18:35:54 samueldmq, sometimes you have two different org schemes to follow, and a tree can only follow one of them 18:36:09 ayoung: that's the answer I think 18:36:10 samueldmq e.g. you could have multiple "production" projects under wildly different places in the tree 18:36:11 organize by company structure versus organize dev-staging-prod 18:36:19 we don't enforce same quota to 2 different orgs 18:36:24 that wouldn't make sense to me 18:36:38 so quotas on project tags doesn't make sense 18:36:43 samueldmq, its not us 18:36:45 I'm still missing how this has anything to do with quotas 18:36:50 hence we really need to push for unified limits, so the only way they can do limits is the one we validate 18:36:54 samueldmq, we can never predict how the things we make will be used 18:37:03 unified limits are a pipe dream 18:37:12 edmondsw: the thing is that it *could be used* to implement quotas based on limits 18:37:13 ayoung: they'd need to write their per-tag-quota-driver then 18:37:17 pretty sure they are impossible with the way they've been speced 18:37:34 ayoung: and we can tell them its not what they're up to, if they do not agree they can do whatever they think is better 18:37:53 so long as tagging and untagging a project is a separate api call from creating a project, we can RBAC manage them separately 18:37:55 lbragstad oh, you mean nova/etc. could use it for something we don't intend... not that an operator could? 18:38:07 edmondsw: yes 18:38:11 edmondsw: correct 18:38:17 start off with the call very restricted, and then think about if we need an call to create a tag separate from tagging a project 18:38:20 finally makes sense 18:38:30 I don't think they will implement anything without really understanding what the thing is for 18:38:41 samueldmq, they never have before 18:38:51 which leads to the next topic on the agenda... 18:39:00 but... the thing is that we're not going to be validating tags with the tree hierarchy that project limits require (as detailed in the unified limits spec) 18:39:08 but I don't think that's likely, unless the quota work that's already in process falls apart... they won't want to switch to something totally different and start over their design work 18:39:27 and what lbragstad just said 18:39:34 edmondsw: ++ 18:39:40 lets make it happen 18:39:44 and document it really well 18:39:48 while it's entirely possible - i'm not sure it would be a good design decision 18:40:11 but that's totally up to the people consuming this and if that's what they want to do - we can't really stop them 18:40:50 we *can* move forward with unified limits and promote that as the supported way of solving the problem 18:40:54 lbragstad: exactly 18:41:23 and not hesitate on implementing something we need because people may use it on things we haven't planned it for 18:41:34 it's useful for managing projects, lets go for it 18:41:37 :-) 18:42:14 i think we need this more than it can hurt us. 18:42:14 anyone else have anything on project tags? 18:42:27 +2 from me 18:42:50 #topic super-infamous-bug-that-must-not-be-named-or-cited-by-number 18:43:02 #link http://adam.younglogic.com/2017/05/fixing-bug-96869/ 18:43:10 ayoung: i assume you added this one? 18:43:10 would that be 968696? 18:43:17 yep 18:43:42 so...I wrote that up to try and explain to the other projects (namely nova) why they should review our fixes 18:43:58 I had sdague say that he did not understand the approach 18:43:58 ayoung: looks like it's hot off the press 18:44:02 ayoung interesting 18:44:09 read it, critique, it might be incoherent 18:44:16 tried to make it as clear and simple as possible 18:44:22 ayoung: cool 18:44:33 ayoung: are you planning on presenting this to anyone/ 18:44:35 I'll try to read before our policy mtg tomorrow 18:44:42 lbragstad, nope 18:44:42 did you ping johnthetubaguy to point it out? 18:44:47 edmondsw: ++ 18:44:51 lbragstad, just pointing people at it when I ask them to review 18:44:54 ayoung: or sdague? 18:45:04 just finished it last night. Did send a link to sdague yes 18:45:09 ayoung: ok 18:45:17 I will parse it today 18:45:49 thanks. And critique. It looked right to me, but It was late, and I've been looking at this way too long 18:46:05 ayoung: i'm not sure it's possible to leave comments 18:46:14 ayoung I'll read it over today as well 18:46:17 ayoung: how do you want us to critique it? 18:46:32 email or pings in IRC will all work, comments on the blog. Carrier Pidgeon 18:46:39 ok 18:47:05 Alaskan sled dog is becoming my new favorite way to deliver super important messages 18:47:22 I'd like to put this to rest. The bug is tagged high or critical everywhere, except nova, that has tagged it as a wishlist item 18:47:34 I would like to point out that this is their bug. THis bug is older than Keystone 18:47:44 it goes back to when identity was in Nova 18:48:16 lbragstad, Malamutes or Huskies are both acceptable. Dog friendly household here. 18:48:40 fwiw - i started working on OpenStack two months before that bug was opened... not sure how that makes me feel ;) 18:49:09 #topic open discussion 18:49:21 lbragstad, I'm pretty sure I know. Its been assigned to me that whole time, except where people grab it for short spurts 18:49:33 the floor is open if anyone has something 18:49:52 anybody knows if they're making the ptg yet? 18:49:59 making it to* 18:50:09 knikolla no idea 18:50:14 knikolla: not sure yet - planning on it but I hope to know more this week 18:50:16 knikolla: I don't, too early yet 18:50:25 knikolla I expect to be there but not sure yet 18:50:26 but I am working on getting approval already 18:51:24 hopefully a lot of us make it 18:51:27 i got approval for it 18:51:35 knikolla: sweet 18:51:50 fwiw - it's sept 11 - 15 18:52:34 anyone have anything else? 18:53:08 cool - well thanks for coming! 18:53:11 #endmeeting