Tuesday, 2018-10-02

*** mvkr has quit IRC00:05
*** hoonetorg has quit IRC00:56
*** hoonetorg has joined #openstack-keystone01:10
*** Dinesh_Bhor has joined #openstack-keystone01:23
*** threestrands has quit IRC01:33
*** Dinesh_Bhor has quit IRC01:45
*** Dinesh_Bhor has joined #openstack-keystone01:48
*** hoonetorg has quit IRC01:49
*** Dinesh_Bhor has quit IRC01:53
*** hoonetorg has joined #openstack-keystone02:01
*** Dinesh_Bhor has joined #openstack-keystone03:00
*** dave-mccowan has quit IRC03:07
*** cfriesen has quit IRC03:15
*** mvkr has joined #openstack-keystone03:29
*** Dinesh_Bhor has quit IRC03:54
*** Dinesh_Bhor has joined #openstack-keystone04:34
*** pcaruana has joined #openstack-keystone04:36
*** pcaruana has quit IRC04:43
openstackgerritVishakha Agarwal proposed openstack/keystone master: Purge soft-deleted trusts  https://review.openstack.org/60497004:54
*** Dinesh_Bhor has quit IRC05:48
*** Dinesh_Bhor has joined #openstack-keystone05:54
*** Dinesh_Bhor has quit IRC05:58
*** Dinesh_Bhor has joined #openstack-keystone06:03
*** Krenair has quit IRC06:04
*** Krenair has joined #openstack-keystone06:24
*** d0ugal has joined #openstack-keystone06:32
*** Emine has quit IRC06:36
*** hoonetorg has quit IRC06:36
*** dims has quit IRC06:38
*** Krenair has quit IRC06:39
*** dims has joined #openstack-keystone06:44
*** dims has quit IRC06:48
*** dims has joined #openstack-keystone06:51
*** Krenair has joined #openstack-keystone06:55
*** Dinesh_Bhor has quit IRC06:55
*** rcernin has quit IRC07:01
*** pcaruana has joined #openstack-keystone07:01
*** aloga has quit IRC07:15
*** aloga has joined #openstack-keystone07:15
*** Dinesh_Bhor has joined #openstack-keystone07:31
*** d0ugal has quit IRC07:53
*** Dinesh_Bhor has quit IRC08:57
*** Dinesh_Bhor has joined #openstack-keystone09:43
*** mvkr has quit IRC09:57
*** mvkr has joined #openstack-keystone10:26
*** Dinesh_Bhor has quit IRC10:27
*** Dinesh_Bhor has joined #openstack-keystone10:29
*** Dinesh_Bhor has quit IRC10:31
*** d0ugal has joined #openstack-keystone11:01
*** dave-mccowan has joined #openstack-keystone11:02
*** mvkr has quit IRC11:16
*** jaosorior has joined #openstack-keystone11:16
*** mvkr has joined #openstack-keystone11:17
*** aojea_ has joined #openstack-keystone11:55
*** aojea_ has quit IRC12:05
*** aojea_ has joined #openstack-keystone12:06
*** aojea_ has quit IRC12:10
*** Emine has joined #openstack-keystone12:23
*** aojea_ has joined #openstack-keystone12:29
*** raildo has joined #openstack-keystone12:32
*** markvoelker has joined #openstack-keystone12:32
*** raildo_ has joined #openstack-keystone12:34
*** raildo has quit IRC12:37
knikollao/12:47
cmurphy\o12:48
ayoungo/\o12:53
*** pcaruana has quit IRC12:57
*** d0ugal has quit IRC13:00
*** aojea_ has quit IRC13:09
knikollaanything that needs my eyes today? (i'll be off again wed-fri)13:09
*** leeuwenrjj has joined #openstack-keystone13:20
*** d0ugal has joined #openstack-keystone13:21
leeuwenrjjHi, I am currently using an app in the pipeline to authenticate users by setting REMOTE_USER. The Rocky release notes suggests "It is no longer possible to, via the paste.ini file to inject middleware into the running keystone application."13:21
leeuwenrjjAt the same time the documentation suggests it is still possible "https://docs.openstack.org/keystone/latest/advanced-topics/external-auth.html"13:22
leeuwenrjjSo I was wondering if it is still possible, for us it would be a major headache if this breaks.13:23
cmurphyleeuwenrjj: the documentation is out of date, the release notes are correct13:23
cmurphykmalloc: can you give leeuwenrjj advice on how to proceed ^13:23
leeuwenrjjYeah, this is a major pain. e.g. we also track request times and status codes with some middleware. It is *REALLY* painfull that was just removed13:24
cmurphyi was afraid of that :(13:25
leeuwenrjjAny specific reason this is not just an option/togggle instead of just removing it altogether.13:25
cmurphyleeuwenrjj: there was a major refactor of our wsgi backend13:26
*** pcaruana has joined #openstack-keystone13:27
leeuwenrjjWould there be any way to re-enable this without to much hackery? Removing such a Major feature as a small security note in the release is not something we can plan for.13:30
openstackgerritMerged openstack/ldappool master: Removed older version of python added 3.5  https://review.openstack.org/60633713:34
*** d0ugal has quit IRC13:36
*** raildo_ is now known as raildo13:39
cmurphyleeuwenrjj: I do not think it will be easy, but when kmalloc wakes up on the west coast he can hopefully help13:40
kmallocJust woke up.13:50
kmallocLike, seconds ago. Forgot to turn off phone notifications :P13:50
cmurphyheh sorry13:51
kmallocNo worries13:51
kmallocToty my fault ;)13:51
kmallocTotally13:51
*** cfriesen has joined #openstack-keystone13:52
kmallocleeuwenrjj: so the easiest bit is to wrap the whole keystone app with a proxy or turn on the debug middleware13:53
kmallocleeuwenrjj: the reason we don't allow injection of middleware anymore is due to security. It was just too easy for something to totally muck up the application itself.13:53
*** d0ugal has joined #openstack-keystone13:54
kmallocIn general it also was because paste deploy was unmaintained13:55
kmallocThink of keystone as a whole application, not as a modular pluggable thing13:56
kmallocIt is us being more opinionated and trying to ensure keystone is as consistent across all deployments as possible13:57
kmallocNow, the debug middleware does emit a lot about timing and such to logs13:57
leeuwenrjjThx for the info, I still think that the security aspect of it is a bit over-rated. The moment someone has enough permissions to modify the pipeline config this won't stop them.13:57
leeuwenrjjAnd for us this will create a lot of headaches without much up front warnings. (Or I have missed it)13:58
kmallocleeuwenrjj: sure, so the concern is almost no one (you are literally the exception in the entire time I've run and developed OpenStack) that changed paste ini14:00
kmallocSo the file was usually untracked by cfg management14:00
kmallocSo it is another vector of change that was easier to drop in / muck up keystone's operation and it allowed loading in any code in-line that could be a security issue. It isn't major, but it is a vector we considered.14:01
kmallocFor what it is worth, if your code has entry points in a python package you can add a line or two in keystone.server.flask.application where we load other middleware14:02
leeuwenrjjAlso parsing debug logs for getting API timings is pretty expensive. We just put timings directly from the pipeline into graphite which scales a lot better. Also we have seen major performance degredation when enabling debug in keystone in the past.14:03
kmallocDebug middleware is different than debug logging.14:03
kmallocYou can still wrap all of keystone in a middleware as well, it is just a wsgi app14:04
kmallocYou just can't inject a middleware into keystone's pipeline (which, fwiw, is going to be almost all collapsed into a singular flask entry this cycle)14:05
kmallocThis is more like how java apps work. Middleware wraps the whole app, but you typically cannot inject middleware into the middle of the java app.14:06
kmallocSo, if you load all of keystone and wrap it In your middleware under the wsgi container, it works the same as before.14:07
leeuwenrjjSo I assume REMOTE_USER to set authenticated users still works?14:07
kmallocYes it does.14:08
leeuwenrjjOk thanks for the pointers. Will have a shot at it.14:08
kmallocAll normal auth and env. Data keystone used before still works as expected14:08
kmallocIf you are still really hard up, I can roll a patch that allows wrapping middleware around keystone (it would be the ourter-most layer). At least as an example until we considered the feature14:10
kmallocBut the request / use of injecting custom middleware into keystone is very limited. Most deployment tools don't even support it.14:10
kmalloc(none?)14:10
kmalloccmurphy: it's 7am here, I need to feed/walk puppers. Brie is at a work event for the next 2 days.14:12
kmallocSo it was s.about when I needed to wake up anyway.14:12
cmurphykmalloc: since you're awake, what do you think of backporting https://review.openstack.org/607056 to queens and pike?14:12
kmallocI would +2 that change14:13
kmallocIt seems like a legit bug that could cause issues with ldap deployments14:13
cmurphyyeah it caused an issue with one of our customers14:13
kmallocAnd it fixes a bug without otherwise changing behavior.14:14
leeuwenrjjWe just added the template to the config management. Such a thing is so trivial that assuming ansible/puppet etc does not support it no-one is using it seems a bit14:14
leeuwenrjjof a short-cut14:14
cmurphykmalloc: https://review.openstack.org/#/q/816b472a9d20e4e7cfe33f2f40ef5daae590795e14:14
kmallocleeuwenrjj: a lot of tools relocate it out of etc, for the most part paste-ini is code not config14:14
kmalloccmurphy: +2 across the board, will +a the last two after zuul weighs in.14:16
kmallocleeuwenrjj: and that is the crux of it. If we reintroduce the capability it will be more restrictive and managed via the keystone config.14:18
kmallocLet me know if you can wrap the whole app or need help doing so, and I can write up a quick example.14:18
kmallocS/can/succeed in14:19
leeuwenrjjA quick example would be great would help not really my daily cup of tea these things14:19
kmallocSure. I'll roll up an example once I get done with morning things like dog food/walks and my coffee.14:23
kmallocYou caught me about 2 minutes after I woke up ;) so I don't think I can roll that example yet (also on mobile), need to sit down at my desk.14:24
kmallocWill def. Have something for you in a few hours14:24
kmalloccmurphy: mmm pumpkin roasted coffee makes me happy.14:25
ayoungleeuwenrjj, I am totally with you on this one14:25
ayoungI wanted to be able to do the same kind of thing.  Paste made it impossible to do some of the things I wanted, though14:25
kmalloccmurphy: down to ~7 unit tests and a couple federated functional tests for auth port. It ... Makes me cry, pushing 3k lines of change.14:26
*** leeuwenrjj has quit IRC14:26
ayoungGAH14:26
cmurphykmalloc: that makes me cry too14:26
kmallocayoung: just for auth.14:26
kmallocBut there is only so much that can be isolated there.14:26
ayoungkmalloc, yeah,  I wanted to be able to slip in a Basic-Auth middleware14:26
kmallocayoung: should still be doable, like java, wrap the whole app, use remote_user14:27
ayoungfeh14:27
ayoungI'll come up with something better, but not right now14:27
knikollakmalloc: send me a ping when you want some eyes on that14:28
kmallocPaste removal doesn't break normal middleware usages. It breaks "insert middleware anywhere"14:28
ayoungonce you get the Flaskification done, lets sit and talk it through14:28
kmallocayoung: ++14:28
ayoungyeah, and I don't want "anywhere"14:28
kmallocTotally, and ultimately, doc update to show an example14:28
kmallocWe can convert what I'll spin up for leeuwenrjj to real docs.14:29
ayoung++14:29
kmallocAnd replace the paste bits from our docs with that.14:29
ayoungsitting in an OSP14 features meeting14:30
ayoungBascially, what RH is promoting from current release...interesting14:30
knikollaayoung: are you wearing an 869686 tshirt?14:30
ayoungYou have the number wrong14:30
kmalloccmurphy, ayoung, knikolla: this conversion has a lot of test changes too. We fundamentally do things differently now. I couldn't easily decouple a lot of it. :(. But the rest of the flaskification has been good.14:30
ayoungand no I am not14:30
knikollai have terrible number memory :/14:31
kmallocAuth just touches ... Everything.14:31
ayoungkmalloc, that is actually a good thing.  If it is not used for auth, it should not really be part of Keystone, right?14:32
ayoungbut...14:32
ayoungshould we make it more isolated?14:32
ayounglike, what if auth was a separate web app from all the other backends, and had to make REST calls to get the data it needed?14:32
ayoungI'm guessing that would not really alleviate your pain14:33
kmallocI've considered that.14:34
kmallocBut for now, it doesn't fix anything and would make things just as painful :P14:34
kmallocAnyway back in a bit, dog walking, pumpkin (not that chemical crap from the main-stream coffee shops) coffee, drugs, and breakfast is in order14:35
kmallocayoung: https://www.deathwishcoffee.com/products/cauldron-aged-pumpkin-spice14:35
kmallocMmmm14:35
kmallocIt's so good.14:35
ayoungBasin now Security stuff14:46
ayoungApp Creds FTW!14:46
ayoungkmalloc, probably need to point someone at making the policy changed for glance, huh?14:47
kmallocYeah.14:48
kmallocProbably14:48
ayoungkmalloc, would flaskification help or hurt that?14:48
kmallocIndifferent14:48
ayoungI mean, we could just hack the policy.json file14:49
ayoungI don't think glance has policy-in-code yet14:49
ayoungW00t...low Footprint Deployment for Sales/Demo use cases!14:53
ayoungAll-in-one14:53
ayoung"Potential Replacement of Packstack"14:53
*** Emine has quit IRC14:55
*** nicolasbock has joined #openstack-keystone15:07
*** d0ugal has quit IRC15:12
*** d0ugal has joined #openstack-keystone15:12
*** leeuwenrjj has joined #openstack-keystone15:13
*** dave-mccowan has quit IRC15:27
*** dave-mccowan has joined #openstack-keystone15:29
hrybackikmalloc: o/ are you still working on that caching best practices guide by chance?15:39
*** felipemonteiro has joined #openstack-keystone15:43
*** gyee has joined #openstack-keystone15:49
cmurphymeeting in #openstack-meeting-alt16:02
kmallochrybacki: i need to write something up, but i sent an email out to the folks on that chain last week17:00
kmallochighlighting the best way forward17:00
kmallocgot a nice thank you from... alexy? was that the name?17:01
kmallocayoung: if you didn't see earlier, app-creds should 100% work in ksm.17:01
kmallocayoung: just need to say "use app cred auth plugin"17:01
kmallocayoung: so changes in deployment (if it doesn't work... uhm, let me know)17:02
kmallocayoung: and i think we need to backlog a "use app-creds" as a default setup for devstack in ksm.17:02
ayoung++17:02
* gagehugo runs to get lunch17:02
kmallocgagehugo: LUNCH! bring me some!17:02
* kmalloc looks at the time.17:02
* knikolla goes to lunch as well. 17:02
kmalloci should eat breakfast.17:02
kmallocknikolla: hey... no fair, making me hungry17:03
kmalloc#startmeeting keystone-office-hours17:04
openstackMeeting started Tue Oct  2 17:04:37 2018 UTC and is due to finish in 60 minutes.  The chair is kmalloc. Information about MeetBot at http://wiki.debian.org/MeetBot.17:04
openstackUseful Commands: #action #agreed #help #info #idea #link #topic #startvote.17:04
*** openstack changes topic to " (Meeting topic: keystone-office-hours)"17:04
*** ChanServ changes topic to "Stein release schedule: https://releases.openstack.org/stein/schedule.html | Meeting agenda: https://etherpad.openstack.org/p/keystone-weekly-meeting | Bugs that need triaging: http://bit.ly/2iJuN1h | Trello: https://trello.com/b/rj0ECz2c/keystone-stein-roadmap !!NOTE!! This Channel is Logged ( https://tinyurl.com/OpenStackKeystone )"17:04
openstackThe meeting name has been set to 'keystone_office_hours'17:04
*** leeuwenrjj has quit IRC17:13
*** leeuwenrjj has joined #openstack-keystone17:19
kmallocayoung: -1 on the explicit domain id for a few reasons, but mostly because the validation is insufficient.17:29
ayoungWFM17:29
ayoungI assume you expand on that in the review?17:29
*** mvkr has quit IRC17:31
kmallocayoung: yeah i've highlighted my concerns17:36
kmallocayoung: mostly things like the uuid you generated isn't what keystone would store internally, it has '-' in it. does shorter hex-only strings work17:36
kmallocetc17:36
kmallocyou're probably going to need to implement json-schema or explicit cast of id to a uuid.hex17:37
kmallocdefault and domain-root (whatever the id is) are the only exceptions for "uuid-is-the-form-of-the-id" for domains17:37
kmallocand specifically uuid.hex17:37
*** Emine has joined #openstack-keystone17:43
hrybackikmalloc: ack. I'm getting pushed for something more formal or I wouldn't ask :)17:44
*** openstackgerrit has quit IRC17:51
*** leeuwenrjj has quit IRC17:51
kmallocon my long list of todo18:00
kmallocformal docs. but really "enable caching. enable service-ksm caching sharing a pool"18:00
kmallocthat is the best practices.18:00
*** pcaruana has quit IRC18:02
knikollaany opinion/preference on the term refreshable vs renewable for app creds?18:04
*** mvkr has joined #openstack-keystone18:05
kmallocflip a coin18:11
kmalloci think renewable is a better term.18:12
kmallocbut i have no qualms with either name18:12
*** aojea has joined #openstack-keystone18:12
*** Emine has quit IRC18:15
kmallocknikolla: https://review.openstack.org/#/c/606195/ that needs your +218:18
knikollakmalloc: i think i'll go for renewable.18:18
knikollalooking now18:18
*** openstackgerrit has joined #openstack-keystone18:19
openstackgerritMorgan Fainberg proposed openstack/keystone master: WIP: Convert auth to flask native dispatching  https://review.openstack.org/60346118:19
kmallocand now... time to chase the last bugs with the auth conversion so we can land it and be much closer to being done with flaskification18:19
*** imacdonn has quit IRC18:21
*** imacdonn has joined #openstack-keystone18:21
kmalloccmurphy: are you ok with me breaking the json_home a little more. basically elminating the OS-FEDERATION entries in lieu of the /v3/auth/ entries only?18:22
kmallocknikolla, ayoung, gagehugo: ^18:22
kmallocbasically: just dropping OS-FEDERATION entries from json_home where there is a mirrored bit in the /v3/auth locations18:23
knikollakmalloc: would that break someone who is using json_home to discover the url?18:24
kmalloconly if they are trying to discover /OS-FEDERATION bits we deprecated18:24
kmallocalso... i don't know of a single person using jsonhome18:24
kmallocit's... not a great document for discovery18:25
kmalloci think it's easier to just use the openstack docs and look up the URL :P18:25
*** mogindi has joined #openstack-keystone18:25
mogindihave a question regarding keystone token issuing, anyone know who the best person to help me?18:26
knikollaIIRC ayoung has a blog post on how to consume json_home18:26
knikollabut I'm cautiously okay with removing deprecated bits from it18:26
kmallocmogindi: lots of folks here, ask away18:26
kmallocknikolla: if it's important i can add a way to add in "extra" REL data18:27
kmallocbut basically with auth conversion, i didn't assume we'd have entries in two locations for the same data (conversion for that one bug fix)18:28
knikollai tremble upon hearing the word "extra"18:28
kmallocknikolla: e.g. i am missing the entry now for OS-FERDERATION/1.0/rel/projects because i have it as /auth/projects18:28
mogindikmalloc: I'm issuing a token using `openstack token issue`, plug the token id generated in an rc file and export along with OS_ env vars. I'm able to run commands as that user normally, but some commands are failing giving a 401. Ever seen that?18:29
kmallocwe used to have it listed in both locations. but with the move to use the same code, i don't have a mechanism to add both json_home rel data bits.18:29
kmallocknikolla: ^18:29
kmallocknikolla: i could split the code back out, but now in flask we really do map the URLs to both locations (direct route) so no code duplication or even a "call other controller"18:29
kmallocit is the same exact controller/resource18:30
knikollakmalloc: understood. in that case i think it's fine to remove it.18:30
kmallocmogindi: i'd need to know more about waht is failing. is it failing after a period of time?18:30
kmallocmogindi: tokens expire18:30
kmallocknikolla: i'm going to just drop the OS-FEDERATION entries and add them back in if folks complain18:32
mogindikmalloc: its not the expiration. its right after generating the token. The command `openstack volume list` works, but for example `openstack volume type list` returns a 40118:32
kmallocknikolla: that is i think 2-4 of the failing tests :P18:32
kmallocmogindi: do you have the correct roles to list that?18:33
kmallocmogindi: odd that you're getting a 401 vs a 403.18:33
kmalloci would expect that to be a 403 without the roles. but i haven't looked at how cinder does enforcement18:34
mogindikmalloc: yeah if its a policy issue, normally would get a 403. Tried setting identical policies to make sure, didn't work18:34
kmallocso if you do: openstack volume list, openstack volume type list, openstack volume list18:34
kmallocthe middle of the two commands would fail18:34
mogindiyes18:34
kmallocbut the other two would work (assuming in short order use)18:35
kmallocwierd18:35
mogindiyes exactly18:35
*** openstackgerrit has quit IRC18:35
kmallocyou might need to get some debug output for us. this might also be something we need to loop in #openstack-cinder folks on18:35
kmallocis cinder the only place you're seeing this?18:35
kmallocor other commands.18:35
kmalloce.g. is it super wide spread or just some things, which might be some odd enforcement thing18:36
mogindinope. `openstack router create` doesn't work either18:36
kmallocwith a 401.18:36
mogindithere could be others, but these are the 2 i know of right now18:36
kmallocare you an admin or a normal user?18:36
kmalloc[or is this a public cloud somewhere]?18:36
moginditried with both. Its our cloud.18:37
kmallocand finally, what version of openstack?18:38
kmallocjust in case i need to check if there is something specific to a release.18:38
mogindipike18:39
kmalloc[ideally, i'd like to get some info, [debug] sanitized logs from cinder for example if things are possible], and i'd like to see the debug output of the osc run too18:39
mogindiokay. where should i paste these logs?18:40
knikollamogindi: paste.openstack.org usually works well18:50
ayoungknikolla, kmalloc my blog post does not really cover that use case18:50
ayoungJust really how to fetch the data.  The real question is whehter OS-FEDERATION would be the path people look for based on old docs18:51
ayounghttps://docs.openstack.org/security-guide/identity/federated-keystone.html18:52
ayoungHMMM18:52
ayoung I think we might have an issue with just removing that, as all of the docs state that you need to have those there in order to set up Federation18:53
ayounghttps://docs.openstack.org/security-guide/identity/federated-keystone.html  For example18:53
ayoungis that what is going to move, or just things like /auth/projects?18:54
knikollaayoung: if i understand correctly, those paths will still work (ex. /OS-FEDERATION/projects) they just won't be advertised on json_home18:54
ayoungDo we get any form of documentation?  Can we put a comment in there?18:55
*** openstackgerrit has joined #openstack-keystone19:06
openstackgerritayoung proposed openstack/keystone-specs master: Unscoped Token Catalog  https://review.openstack.org/60734619:06
kmalloci'll just add a mechanism for the additional rel entries19:12
kmallocbleh.19:12
mogindikmalloc: http://paste.openstack.org/show/731291/19:15
mogindilet me know if there's something specific u need19:15
* kmalloc drinks more coffee and pokes at paste19:26
kmallocok.. i want to loop in some cinder folks.19:27
kmallocmogindi: you might want to join #openstack-cinder as well. I don't know how some things are failing with 401 vs 403. might ask you to post your cinder config (with passwords/sensitive data stripped out)19:32
*** dave-mccowan has quit IRC19:41
kmallocmogindi: can you do this with cinderclient as well?19:43
kmallocmogindi: want to see if there is an issue with OSC / different response for volume list and type list19:43
mogindiokay just joined #openstack-cinder19:43
mogindiokay gonna try19:43
mogindikmalloc: cinder commands not working with token, getting "ERROR: argument --os-token: conflicting option string(s): --os-token" - troubleshooting19:47
kmallocblink19:51
*** jdennis has quit IRC19:51
*** dave-mccowan has joined #openstack-keystone20:30
*** dave-mccowan has quit IRC20:36
*** raildo has quit IRC20:58
*** jdennis has joined #openstack-keystone21:04
*** Emine has joined #openstack-keystone21:16
openstackgerritayoung proposed openstack/keystone master: Allow an explicit_domain_id parameter when creating a domain  https://review.openstack.org/60523521:28
*** felipemonteiro has quit IRC21:33
kmallocknikolla: ok so...21:40
kmallocknikolla: i don't have a good way to maintain json home things. it also looks like there is an issue with using the alternate_url bits i implemented :(21:41
kmallocany "prefix" on the API will apply to the mapping as well21:42
kmallocgrrrr.21:42
knikolla:/21:42
kmalloci'll have a whole bunch of "fixes" down the road.21:43
kmalloci'm just debating what to do next... i guess alternate_urls preclude using an API prefix21:46
kmalloci'm going to add that logic in as well21:46
kmallocbleh21:46
*** mogindi has quit IRC21:51
*** Emine has quit IRC21:53
openstackgerritMerged openstack/keystone master: Properly replace flask view args in links  https://review.openstack.org/60619522:16
*** aojea has quit IRC23:11
*** rcernin has joined #openstack-keystone23:59

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