)]}'
{"id":"openstack%2Fkeystone~36839","triplet_id":"openstack%2Fkeystone~master~I9dda6dbe073f03806bdf539db6faa01644109f1c","project":"openstack/keystone","branch":"master","topic":"bp/authentication-tied-to-token","hashtags":[],"change_id":"I9dda6dbe073f03806bdf539db6faa01644109f1c","subject":"Pluggable Remote User","status":"MERGED","created":"2013-07-12 14:25:08.000000000","updated":"2013-07-17 05:01:51.000000000","submitted":"2013-07-17 05:01:50.000000000","submitter":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"total_comment_count":54,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"8f077157136286c345b6996e788e8c4b20e28847","_number":36839,"virtual_id_number":36839,"owner":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"recommended":{"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},{"value":0,"_account_id":220,"name":"Haneef Ali","email":"haneef.ali@hp.com","username":"haneef"},{"value":0,"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},{"value":0,"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},{"value":0,"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},{"value":0,"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},{"value":1,"date":"2013-07-17 03:17:20.000000000","_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},{"value":0,"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},{"value":2,"date":"2013-07-17 05:01:50.000000000","_account_id":3,"name":"Jenkins","username":"jenkins"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","value":1,"default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"all":[{"value":2,"date":"2013-07-17 02:52:35.000000000","_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},{"value":0,"_account_id":220,"name":"Haneef Ali","email":"haneef.ali@hp.com","username":"haneef"},{"value":0,"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},{"value":2,"date":"2013-07-17 02:52:35.000000000","_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},{"value":0,"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},{"value":2,"date":"2013-07-17 02:52:35.000000000","_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},{"value":0,"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},{"value":0,"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"all":[{"value":0,"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},{"value":0,"_account_id":220,"name":"Haneef Ali","email":"haneef.ali@hp.com","username":"haneef"},{"value":0,"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},{"value":1,"date":"2013-07-17 03:00:50.000000000","_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},{"value":0,"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},{"value":0,"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},{"value":0,"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},{"value":0,"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":3,"name":"Jenkins","username":"jenkins"},{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},{"_account_id":220,"name":"Haneef Ali","email":"haneef.ali@hp.com","username":"haneef"},{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},{"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},{"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2013-07-16 01:53:53.000000000","updated_by":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"reviewer":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"state":"REVIEWER"},{"updated":"2013-07-16 19:21:13.000000000","updated_by":{"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},"reviewer":{"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},"state":"REVIEWER"},{"updated":"2013-07-16 20:27:51.000000000","updated_by":{"_account_id":220,"name":"Haneef Ali","email":"haneef.ali@hp.com","username":"haneef"},"reviewer":{"_account_id":220,"name":"Haneef Ali","email":"haneef.ali@hp.com","username":"haneef"},"state":"REVIEWER"},{"updated":"2013-07-17 01:28:12.000000000","updated_by":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"reviewer":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"state":"REVIEWER"},{"updated":"2013-07-17 02:52:35.000000000","updated_by":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"reviewer":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"state":"REVIEWER"},{"updated":"2013-07-17 02:52:35.000000000","updated_by":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"reviewer":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"state":"REVIEWER"},{"updated":"2013-07-17 03:17:20.000000000","updated_by":{"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},"reviewer":{"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2013-07-17 05:01:50.000000000","updated_by":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"reviewer":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"state":"REVIEWER"}],"messages":[{"id":"03a28cfae6247a4f28023a323d18751821219a3b","author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"date":"2013-07-12 14:55:03.000000000","message":"Patch Set 1: Looks good to me, but someone else must approve\n\n","accounts_in_message":[],"_revision_number":1},{"id":"126b358e64a13c1367a42e193cb54a832e9e5678","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-12 15:22:33.000000000","message":"Patch Set 1: Works for me\n\nBuild succeeded.\n\n- http://logs.openstack.org/36839/1/check/gate-keystone-pep8/6244 : SUCCESS in 2m 06s\n- http://docs-draft.openstack.org/36839/1/check/gate-keystone-docs/4617/doc/build/html/ : SUCCESS in 1m 32s\n- http://logs.openstack.org/36839/1/check/gate-keystone-python26/5110 : SUCCESS in 13m 17s\n- http://logs.openstack.org/36839/1/check/gate-keystone-python27/5149 : SUCCESS in 7m 20s\n- http://logs.openstack.org/36839/1/check/gate-tempest-devstack-vm-full/31648 : SUCCESS in 45m 51s\n- http://logs.openstack.org/36839/1/check/gate-tempest-devstack-vm-postgres-full/31341 : SUCCESS in 57m 13s\n- http://logs.openstack.org/36839/1/check/gate-tempest-devstack-vm-neutron/3009 : FAILURE in 17m 41s (non-voting)\n- http://logs.openstack.org/36839/1/check/gate-grenade-devstack-vm/17662 : FAILURE in 25m 47s (non-voting)\n","accounts_in_message":[],"_revision_number":1},{"id":"35bdda8520f8df7b315eec5258c39cf064fc0a99","author":{"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},"date":"2013-07-12 15:41:24.000000000","message":"Patch Set 1: Works for me\n\nSmokeStack Results (patch set 1):\n\tLibvirt (Fedora 18) Success: http://smokestack.openstack.org/?go\u003d/jobs/99671\n","accounts_in_message":[],"_revision_number":1},{"id":"e1626055ee73d7ab1a9b44ee175f56a692c110c3","author":{"_account_id":220,"name":"Haneef Ali","email":"haneef.ali@hp.com","username":"haneef"},"date":"2013-07-12 16:46:16.000000000","message":"Patch Set 1: (1 inline comment)\n\n","accounts_in_message":[],"_revision_number":1},{"id":"0eb039c6f2faf47221aec7338c3c791c2d1d4e8f","author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"date":"2013-07-12 22:51:45.000000000","message":"Patch Set 1: I would prefer that you didn\u0027t merge this\n\nI\u0027m not sure I understand why. didn\u0027t we decide that we can use the AUTH_TYPE header to figure out what sort of auth it is. I understand wanting to limit external AUTH mechanisms, my thought would be an external check always runs and compares what is present to what is allowed. \n\n\nwe could then use a config and provider scheme like this to add new auth types, but that config option will want to at least be a list not a string","accounts_in_message":[],"_revision_number":1},{"id":"f173366880c4d45e500d4366309bb5a260a9cbaa","author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"date":"2013-07-13 04:01:53.000000000","message":"Patch Set 1: (1 inline comment)\n\nTrying to get the patches that need to merge and that will conflict into sequence.\n\nThis patch  is just for letting people swap out the implementation, which is something that was requested at the last summit.  You can expand what is done here, this is just providing the requested mechanism.","accounts_in_message":[],"_revision_number":1},{"id":"3422b44475a73a2c815ffebc25799bbe3f0e9d65","author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"date":"2013-07-13 04:45:38.000000000","message":"Patch Set 1:\n\nRight but i think the general concept of handling external authentication will be standard and what we need is to allow a plugin system of different external handlers. This would be making the core part pluggable.\n\nHow would something like this handle the situation where you can use one of multiple external authentication mechanisms? There isn\u0027t much in that vein that is practical right now but how do you say you can use kerberos or basic auth?","accounts_in_message":[],"_revision_number":1},{"id":"821744c253a4713520fc8d9e7247ffaede06a88a","author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"date":"2013-07-13 04:48:16.000000000","message":"Patch Set 1:\n\ndoes this need to be done in this order? can it be post freeze? The whole external auth system is messy, token providers and binding don\u0027t even try to fix the problem but they don\u0027t alter the current behaviour.","accounts_in_message":[],"_revision_number":1},{"id":"3820c480909d0bcc1e5db3bb23af304b301769d3","author":{"_account_id":220,"name":"Haneef Ali","email":"haneef.ali@hp.com","username":"haneef"},"date":"2013-07-13 22:30:31.000000000","message":"Patch Set 1: I would prefer that you didn\u0027t merge this\n\n(1 inline comment)\n\n","accounts_in_message":[],"_revision_number":1},{"id":"48a48db261f5fac97e582bf36dc99c6d1023e0e7","author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"date":"2013-07-15 00:15:04.000000000","message":"Patch Set 1: (1 inline comment)\n\n","accounts_in_message":[],"_revision_number":1},{"id":"8d1f7fce9fc08d91217ecfb5cb0f84438f31e274","author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"date":"2013-07-15 17:43:43.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"4f8f2aacb6e6eef3e6f3511fd94a096f35faf56b","author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"date":"2013-07-15 18:11:42.000000000","message":"Patch Set 2: I would prefer that you didn\u0027t merge this\n\nexternal.py should not be there.","accounts_in_message":[],"_revision_number":2},{"id":"1c2d298a91e7d9f37bdcda6e392499fec69d0581","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-15 18:41:05.000000000","message":"Patch Set 2: Works for me\n\nBuild succeeded.\n\n- http://logs.openstack.org/36839/2/check/gate-keystone-pep8/6290 : SUCCESS in 1m 38s\n- http://docs-draft.openstack.org/36839/2/check/gate-keystone-docs/4663/doc/build/html/ : SUCCESS in 1m 39s\n- http://logs.openstack.org/36839/2/check/gate-keystone-python26/5162 : SUCCESS in 14m 10s\n- http://logs.openstack.org/36839/2/check/gate-keystone-python27/5194 : SUCCESS in 6m 38s\n- http://logs.openstack.org/36839/2/check/gate-tempest-devstack-vm-full/32243 : SUCCESS in 57m 10s\n- http://logs.openstack.org/36839/2/check/gate-tempest-devstack-vm-cells-full/361 : FAILURE in 15m 09s (non-voting)\n- http://logs.openstack.org/36839/2/check/gate-tempest-devstack-vm-postgres-full/31935 : SUCCESS in 46m 01s\n- http://logs.openstack.org/36839/2/check/gate-tempest-devstack-vm-neutron/3726 : SUCCESS in 18m 36s (non-voting)\n- http://logs.openstack.org/36839/2/check/gate-grenade-devstack-vm/18179 : SUCCESS in 26m 32s (non-voting)\n","accounts_in_message":[],"_revision_number":2},{"id":"b4ecacc6fbd2177201ae5a94d2cbf256a3e5360d","author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"date":"2013-07-15 19:03:49.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"96ae98d0db9deea251510681355d269029820af0","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-15 19:52:58.000000000","message":"Patch Set 3: Works for me\n\nBuild succeeded.\n\n- http://logs.openstack.org/36839/3/check/gate-keystone-pep8/6293 : SUCCESS in 4m 15s\n- http://docs-draft.openstack.org/36839/3/check/gate-keystone-docs/4666/doc/build/html/ : SUCCESS in 3m 00s\n- http://logs.openstack.org/36839/3/check/gate-keystone-python26/5165 : SUCCESS in 13m 23s\n- http://logs.openstack.org/36839/3/check/gate-keystone-python27/5197 : SUCCESS in 8m 04s\n- http://logs.openstack.org/36839/3/check/gate-tempest-devstack-vm-full/32278 : SUCCESS in 47m 46s\n- http://logs.openstack.org/36839/3/check/gate-tempest-devstack-vm-cells-full/390 : FAILURE in 17m 55s (non-voting)\n- http://logs.openstack.org/36839/3/check/gate-tempest-devstack-vm-postgres-full/31970 : SUCCESS in 48m 51s\n- http://logs.openstack.org/36839/3/check/gate-tempest-devstack-vm-neutron/3765 : SUCCESS in 20m 44s (non-voting)\n- http://logs.openstack.org/36839/3/check/gate-grenade-devstack-vm/18212 : SUCCESS in 23m 49s (non-voting)\n","accounts_in_message":[],"_revision_number":3},{"id":"e1ee8a67a63b355469cd583de23178860e108c9c","author":{"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},"date":"2013-07-15 20:27:52.000000000","message":"Patch Set 3: Works for me\n\nSmokeStack Results (patch set 3):\n\tLibvirt (Fedora 18) Success: http://smokestack.openstack.org/?go\u003d/jobs/100730\n","accounts_in_message":[],"_revision_number":3},{"id":"bca0e8672dd0f83afa7aa3033297e9cea0ee4615","author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"date":"2013-07-15 21:16:53.000000000","message":"Patch Set 3: Rebased","accounts_in_message":[],"_revision_number":3},{"id":"38010ce687c7f84b5a6d916ae75a06953fa7bedd","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-15 22:02:45.000000000","message":"Patch Set 4: Works for me\n\nBuild succeeded.\n\n- http://logs.openstack.org/36839/4/check/gate-keystone-pep8/6298 : SUCCESS in 1m 44s\n- http://docs-draft.openstack.org/36839/4/check/gate-keystone-docs/4671/doc/build/html/ : SUCCESS in 1m 51s\n- http://logs.openstack.org/36839/4/check/gate-keystone-python26/5170 : SUCCESS in 14m 26s\n- http://logs.openstack.org/36839/4/check/gate-keystone-python27/5202 : SUCCESS in 6m 52s\n- http://logs.openstack.org/36839/4/check/gate-tempest-devstack-vm-full/32329 : SUCCESS in 45m 42s\n- http://logs.openstack.org/36839/4/check/gate-tempest-devstack-vm-cells-full/421 : FAILURE in 15m 47s (non-voting)\n- http://logs.openstack.org/36839/4/check/gate-tempest-devstack-vm-postgres-full/32021 : SUCCESS in 45m 39s\n- http://logs.openstack.org/36839/4/check/gate-tempest-devstack-vm-neutron/3828 : SUCCESS in 19m 40s (non-voting)\n- http://logs.openstack.org/36839/4/check/gate-grenade-devstack-vm/18258 : SUCCESS in 24m 57s (non-voting)\n","accounts_in_message":[],"_revision_number":4},{"id":"14845a7c9fa5547ffebfb5c077b00005a20bf7dc","author":{"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},"date":"2013-07-15 22:49:04.000000000","message":"Patch Set 4: Works for me\n\nSmokeStack Results (patch set 4):\n\tLibvirt (Fedora 18) Success: http://smokestack.openstack.org/?go\u003d/jobs/100801\n","accounts_in_message":[],"_revision_number":4},{"id":"28b09e91809583fb0486af3ebf8f031e43007c06","author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"date":"2013-07-16 00:05:41.000000000","message":"Patch Set 4: I would prefer that you didn\u0027t merge this\n\n(2 inline comments)\n\nNot sure if I favor this approach. Instead, we should create an \"external\" method and let the plugin do its thing.","accounts_in_message":[],"_revision_number":4},{"id":"38446dd0be9a1ce0eac17991dfeca9d4be0fc969","author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"date":"2013-07-16 01:36:55.000000000","message":"Uploaded patch set 5.","accounts_in_message":[],"_revision_number":5},{"id":"188eb664ad877cd68582d5bc5edf144af1d41f2f","author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"date":"2013-07-16 01:39:13.000000000","message":"Patch Set 4: (2 inline comments)\n\n","accounts_in_message":[],"_revision_number":4},{"id":"c8a4c0ebb3717f1f87c014986d74e99cef0689a4","author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"date":"2013-07-16 01:53:53.000000000","message":"Patch Set 5: I would prefer that you didn\u0027t merge this\n\n(2 inline comments)\n\n","accounts_in_message":[],"_revision_number":5},{"id":"c2e6e769f440d6d87ac66e8ab365b5ce2a88c0b4","author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"date":"2013-07-16 01:59:10.000000000","message":"Patch Set 5:\n\n@guang-yee i don\u0027t think we should have an \u0027external\u0027 mechanism. If you are doing something externally it should really be external (ie no impact on the body). \n\nIt\u0027s definetly not perfect but an extension point is a good idea and we can use it to have a clear path later. \n\nAs a quick example though not all external auth\u0027s provide REMOTE_USER, x509 definitely doesn\u0027t and we shouldn\u0027t need to check for all the headers before calling the plugin. I agree with the entry point but we will have to look later at how it is used.","accounts_in_message":[],"_revision_number":5},{"id":"2c949e236509fb8693f84c64c4f2ba7ac7393355","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-16 02:33:48.000000000","message":"Patch Set 5: Works for me\n\nBuild succeeded.\n\n- http://logs.openstack.org/36839/5/check/gate-keystone-pep8/6308 : SUCCESS in 1m 40s\n- http://docs-draft.openstack.org/36839/5/check/gate-keystone-docs/4681/doc/build/html/ : SUCCESS in 1m 41s\n- http://logs.openstack.org/36839/5/check/gate-keystone-python26/5182 : SUCCESS in 13m 06s\n- http://logs.openstack.org/36839/5/check/gate-keystone-python27/5212 : SUCCESS in 11m 31s\n- http://logs.openstack.org/36839/5/check/gate-tempest-devstack-vm-full/32429 : SUCCESS in 56m 45s\n- http://logs.openstack.org/36839/5/check/gate-tempest-devstack-vm-cells-full/470 : FAILURE in 15m 27s (non-voting)\n- http://logs.openstack.org/36839/5/check/gate-tempest-devstack-vm-postgres-full/32121 : SUCCESS in 46m 42s\n- http://logs.openstack.org/36839/5/check/gate-tempest-devstack-vm-neutron/3953 : SUCCESS in 18m 37s (non-voting)\n- http://logs.openstack.org/36839/5/check/gate-grenade-devstack-vm/18347 : FAILURE in 18m 21s (non-voting)\n","accounts_in_message":[],"_revision_number":5},{"id":"019b0da1eafb5534e0ef85d5cc6b1b606ad24d9f","author":{"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},"date":"2013-07-16 05:06:37.000000000","message":"Patch Set 5: Works for me\n\nSmokeStack Results (patch set 5):\n\tLibvirt (Fedora 18) Success: http://smokestack.openstack.org/?go\u003d/jobs/101008\n","accounts_in_message":[],"_revision_number":5},{"id":"633934d02b0ac4c2ad63106c017ad5e8da078df5","author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"date":"2013-07-16 05:34:51.000000000","message":"Patch Set 5:\n\nayoung, jamielennox, I think you guys misunderstood my proposal. Client doesn\u0027t have to change anything. What auth controller ended up with is REMOTE_USER in the context and whatever that is populated by Apache front-end (peer certificate, kerberos principal, whatever). What I am proposing is a \"mechanism\" to ensure consistency. We don\u0027t want to end up with a dichotomy of plugin framework. The proposed data structure is really internal, used by auth controller to communicate with the \"remote_user\" auth plugin only.\n\n{\"auth\": {\n  \"identity\": {\n    \"methods\": [\"external\"]\n  }\n}\n\nIt is really a trick, if you will, to make sure all plugins are \"managed\" by the framework. Since the request context is passed into the plugin, remote_user plugin should have everything it needs to populate the auth_context.\n\nbtw, as a side node, I think this code, in its current form, might be breaking backward compatibility. Looking at the code, I am not sure if it supports domain-scoped or project-scoped (other than default project) tokens.","accounts_in_message":[],"_revision_number":5},{"id":"d2551aeeaa17890f006c758f3436559177af75eb","author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"date":"2013-07-16 16:57:28.000000000","message":"Uploaded patch set 6.","accounts_in_message":[],"_revision_number":6},{"id":"2a4724bb263b8f74c7493ada85b2b2f359923da9","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-16 17:46:00.000000000","message":"Patch Set 6: Works for me\n\nBuild succeeded.\n\n- http://logs.openstack.org/36839/6/check/gate-keystone-pep8/6318 : SUCCESS in 3m 02s\n- http://docs-draft.openstack.org/36839/6/check/gate-keystone-docs/4691/doc/build/html/ : SUCCESS in 2m 57s\n- http://logs.openstack.org/36839/6/check/gate-keystone-python26/5192 : SUCCESS in 12m 54s\n- http://logs.openstack.org/36839/6/check/gate-keystone-python27/5222 : SUCCESS in 8m 12s\n- http://logs.openstack.org/36839/6/check/gate-tempest-devstack-vm-full/32693 : SUCCESS in 48m 26s\n- http://logs.openstack.org/36839/6/check/gate-tempest-devstack-vm-cells-full/692 : FAILURE in 14m 21s (non-voting)\n- http://logs.openstack.org/36839/6/check/gate-tempest-devstack-vm-postgres-full/32385 : SUCCESS in 47m 51s\n- http://logs.openstack.org/36839/6/check/gate-tempest-devstack-vm-neutron/4262 : SUCCESS in 18m 00s (non-voting)\n- http://logs.openstack.org/36839/6/check/gate-grenade-devstack-vm/18585 : SUCCESS in 23m 43s (non-voting)\n","accounts_in_message":[],"_revision_number":6},{"id":"c9b760c26a9c9e0b187efd5edb244cc18aa5bc5f","author":{"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},"date":"2013-07-16 19:21:13.000000000","message":"Patch Set 6: Looks good to me, but someone else must approve\n\n(1 inline comment)\n\nLooks very good to me. Great Job! Very cool seeing this cleaned up!","accounts_in_message":[],"_revision_number":6},{"id":"5ee3d3cebb5ce0e18531d8ce20bffaed7715aa78","author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"date":"2013-07-16 20:00:58.000000000","message":"Uploaded patch set 7.","accounts_in_message":[],"_revision_number":7},{"id":"b48783b8a149ffda9508c14c1012e6ed6e2c3778","author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"date":"2013-07-16 20:13:20.000000000","message":"Patch Set 6: (8 inline comments)\n\n","accounts_in_message":[],"_revision_number":6},{"id":"fe072e1db5e49ddeadc7855ae0f55c1f72cbbbaf","author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"date":"2013-07-16 20:22:28.000000000","message":"Patch Set 7: I would prefer that you didn\u0027t merge this\n\n(3 inline comments)\n\nalmost there, just a couple of suggestions","accounts_in_message":[],"_revision_number":7},{"id":"8801d7d1f74d88e1daae8750912c3b65e8d2c316","author":{"_account_id":220,"name":"Haneef Ali","email":"haneef.ali@hp.com","username":"haneef"},"date":"2013-07-16 20:27:51.000000000","message":"Patch Set 7: I would prefer that you didn\u0027t merge this\n\n(1 inline comment)\n\n","accounts_in_message":[],"_revision_number":7},{"id":"04947cb4b76db1b22de3c04131679ad0d6fa195f","author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"date":"2013-07-16 20:33:43.000000000","message":"Patch Set 7: I would prefer that you didn\u0027t merge this\n\n(7 inline comments)\n\ntransferred my comments from patch set 6","accounts_in_message":[],"_revision_number":7},{"id":"3a7db5490a10087fac71abccd42e2e7d91e4eb86","author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"date":"2013-07-16 20:38:56.000000000","message":"Patch Set 7: (2 inline comments)\n\n","accounts_in_message":[],"_revision_number":7},{"id":"8aeabf18212d4d150838f1039d872ba58e9b61f5","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-16 20:49:10.000000000","message":"Patch Set 7: Works for me\n\nBuild succeeded.\n\n- http://logs.openstack.org/36839/7/check/gate-keystone-pep8/6326 : SUCCESS in 1m 53s\n- http://docs-draft.openstack.org/36839/7/check/gate-keystone-docs/4699/doc/build/html/ : SUCCESS in 3m 20s\n- http://logs.openstack.org/36839/7/check/gate-keystone-python26/5201 : SUCCESS in 10m 38s\n- http://logs.openstack.org/36839/7/check/gate-keystone-python27/5230 : SUCCESS in 10m 38s\n- http://logs.openstack.org/36839/7/check/gate-tempest-devstack-vm-full/32760 : SUCCESS in 45m 52s\n- http://logs.openstack.org/36839/7/check/gate-tempest-devstack-vm-cells-full/740 : FAILURE in 14m 28s (non-voting)\n- http://logs.openstack.org/36839/7/check/gate-tempest-devstack-vm-postgres-full/32452 : SUCCESS in 48m 04s\n- http://logs.openstack.org/36839/7/check/gate-tempest-devstack-vm-neutron/4337 : SUCCESS in 18m 02s (non-voting)\n- http://logs.openstack.org/36839/7/check/gate-grenade-devstack-vm/18641 : SUCCESS in 26m 18s (non-voting)\n","accounts_in_message":[],"_revision_number":7},{"id":"30ca4bf7eb0752ed597b734f76396f3ee275261d","author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"date":"2013-07-16 21:36:22.000000000","message":"Patch Set 7: (10 inline comments)\n\nThanks for all the input. Updated patch on the way","accounts_in_message":[],"_revision_number":7},{"id":"0675f55a80796e179c43f4fa4e03a32e7e602467","author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"date":"2013-07-16 21:38:15.000000000","message":"Uploaded patch set 8.","accounts_in_message":[],"_revision_number":8},{"id":"691f168b8099d4b2f1f37528d248a63d97709055","author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"date":"2013-07-16 22:11:10.000000000","message":"Patch Set 8: (7 inline comments)\n\n","accounts_in_message":[],"_revision_number":8},{"id":"ee36f1f63f2a79db9b2a37c2bd33e126cfcede78","author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"date":"2013-07-16 22:15:04.000000000","message":"Patch Set 8: I would prefer that you didn\u0027t merge this\n\n(1 inline comment)\n\nstill, would like typos corrected.","accounts_in_message":[],"_revision_number":8},{"id":"d0c1201037115fb6fb88b1422e78b8b7789907a8","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-16 22:34:12.000000000","message":"Patch Set 8: Works for me\n\nBuild succeeded.\n\n- http://logs.openstack.org/36839/8/check/gate-keystone-pep8/6331 : SUCCESS in 1m 45s\n- http://docs-draft.openstack.org/36839/8/check/gate-keystone-docs/4704/doc/build/html/ : SUCCESS in 1m 52s\n- http://logs.openstack.org/36839/8/check/gate-keystone-python26/5206 : SUCCESS in 10m 46s\n- http://logs.openstack.org/36839/8/check/gate-keystone-python27/5235 : SUCCESS in 6m 53s\n- http://logs.openstack.org/36839/8/check/gate-tempest-devstack-vm-full/32787 : SUCCESS in 55m 51s\n- http://logs.openstack.org/36839/8/check/gate-tempest-devstack-vm-cells-full/758 : FAILURE in 14m 20s (non-voting)\n- http://logs.openstack.org/36839/8/check/gate-tempest-devstack-vm-postgres-full/32479 : SUCCESS in 45m 32s\n- http://logs.openstack.org/36839/8/check/gate-tempest-devstack-vm-neutron/4368 : SUCCESS in 17m 23s (non-voting)\n- http://logs.openstack.org/36839/8/check/gate-grenade-devstack-vm/18664 : SUCCESS in 23m 40s (non-voting)\n","accounts_in_message":[],"_revision_number":8},{"id":"4f34946beccc42a61a3c54c42a23af1883348184","author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"date":"2013-07-16 22:59:24.000000000","message":"Patch Set 8: (2 inline comments)\n\nLooks good to me. If you address bknudson\u0027s concerns I am ready to pull the trigger on this one.","accounts_in_message":[],"_revision_number":8},{"id":"ee2c167dd06c3e9e78c094376e653661608b52d7","author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"date":"2013-07-16 23:58:15.000000000","message":"Uploaded patch set 9.","accounts_in_message":[],"_revision_number":9},{"id":"f5993cf53463f1d4ade20a1fceb24ae9acc8e64f","author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"date":"2013-07-17 00:03:41.000000000","message":"Patch Set 9: Looks good to me (core reviewer)\n\nAll my questions were addressed. Looks good.","accounts_in_message":[],"_revision_number":9},{"id":"cdb1d97b5946b3f92f89782a57bf7a2caa2ef647","author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"date":"2013-07-17 00:13:51.000000000","message":"Patch Set 9: Looks good to me (core reviewer)\n\nawesome!","accounts_in_message":[],"_revision_number":9},{"id":"516194d4b5fd2d0f3644f1d8e378f3a4c8d01c36","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-17 00:55:29.000000000","message":"Patch Set 9: Works for me\n\nBuild succeeded.\n\n- http://logs.openstack.org/36839/9/check/gate-keystone-pep8/6337 : SUCCESS in 1m 54s\n- http://docs-draft.openstack.org/36839/9/check/gate-keystone-docs/4710/doc/build/html/ : SUCCESS in 3m 14s\n- http://logs.openstack.org/36839/9/check/gate-keystone-python26/5212 : SUCCESS in 12m 22s\n- http://logs.openstack.org/36839/9/check/gate-keystone-python27/5241 : SUCCESS in 7m 58s\n- http://logs.openstack.org/36839/9/check/gate-tempest-devstack-vm-full/32844 : SUCCESS in 45m 31s\n- http://logs.openstack.org/36839/9/check/gate-tempest-devstack-vm-cells-full/780 : FAILURE in 14m 01s (non-voting)\n- http://logs.openstack.org/36839/9/check/gate-tempest-devstack-vm-postgres-full/32536 : SUCCESS in 57m 08s\n- http://logs.openstack.org/36839/9/check/gate-tempest-devstack-vm-neutron/4429 : SUCCESS in 21m 42s (non-voting)\n- http://logs.openstack.org/36839/9/check/gate-grenade-devstack-vm/18713 : SUCCESS in 22m 03s (non-voting)\n","accounts_in_message":[],"_revision_number":9},{"id":"a18c50920573002867a9cff33d444037ba58bbc5","author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"date":"2013-07-17 01:28:12.000000000","message":"Patch Set 9: (2 inline comments)\n\n","accounts_in_message":[],"_revision_number":9},{"id":"715273d0219e2c10f97a6a1e41add2355311590d","author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"date":"2013-07-17 01:28:25.000000000","message":"Patch Set 9: Looks good to me (core reviewer); Approved\n\n2 +2s from core other than me.","accounts_in_message":[],"_revision_number":9},{"id":"3021ddb273c17acbcfcdcd60abf8de9a865eedd2","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-17 01:31:22.000000000","message":"Patch Set 9: No score\n\nStarting gate jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":9},{"id":"3cf2750483484ba19d0d9eeff479bc612a87b2da","author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"date":"2013-07-17 02:52:10.000000000","message":"Uploaded patch set 10.","accounts_in_message":[],"_revision_number":10},{"id":"ba649bdaf9354f54e8e9779dbe2862a9bb205828","author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"date":"2013-07-17 02:52:35.000000000","message":"Patch Set 10: Looks good to me (core reviewer)\n\nAutomatically re-added by Gerrit trivial rebase detection script.","accounts_in_message":[],"_revision_number":10},{"id":"1dd7fe34eaea6c627c7ae04853b2057d90298918","author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"date":"2013-07-17 02:52:35.000000000","message":"Patch Set 10: Looks good to me (core reviewer)\n\nAutomatically re-added by Gerrit trivial rebase detection script.","accounts_in_message":[],"_revision_number":10},{"id":"866a4e22f87831a69db9ea9f02c2fed83f039123","author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"date":"2013-07-17 02:52:35.000000000","message":"Patch Set 10: Looks good to me (core reviewer)\n\nAutomatically re-added by Gerrit trivial rebase detection script.","accounts_in_message":[],"_revision_number":10},{"id":"4bc672ae414f55b27b06edd7f7ec8745ea12296d","author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"date":"2013-07-17 03:00:50.000000000","message":"Patch Set 10: Approved\n\n","accounts_in_message":[],"_revision_number":10},{"id":"f948a0f941c8ad8151a3c20a7391dbdaba3afb4e","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-17 03:00:51.000000000","message":"Patch Set 10:\n\nStarting gate jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":10},{"id":"366a90c6978463962f4be5ab2cb6478959ca5c07","author":{"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},"date":"2013-07-17 03:17:20.000000000","message":"Patch Set 10: Works for me\n\nSmokeStack Results (patch set 10):\n\tLibvirt (Fedora 18) Success: http://smokestack.openstack.org/?go\u003d/jobs/101638\n","accounts_in_message":[],"_revision_number":10},{"id":"4e053d951cf88fd96515349ce52b1ce3936c4cfe","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-17 03:49:33.000000000","message":"Patch Set 10: Works for me\n\nBuild succeeded.\n\n- http://logs.openstack.org/36839/10/check/gate-keystone-pep8/6348 : SUCCESS in 1m 35s\n- http://docs-draft.openstack.org/36839/10/check/gate-keystone-docs/4721/doc/build/html/ : SUCCESS in 1m 38s\n- http://logs.openstack.org/36839/10/check/gate-keystone-python26/5225 : SUCCESS in 11m 36s\n- http://logs.openstack.org/36839/10/check/gate-keystone-python27/5252 : SUCCESS in 6m 45s\n- http://logs.openstack.org/36839/10/check/gate-tempest-devstack-vm-full/32924 : SUCCESS in 51m 46s\n- http://logs.openstack.org/36839/10/check/gate-tempest-devstack-vm-cells-full/824 : FAILURE in 19m 18s (non-voting)\n- http://logs.openstack.org/36839/10/check/gate-tempest-devstack-vm-postgres-full/32616 : SUCCESS in 56m 55s\n- http://logs.openstack.org/36839/10/check/gate-tempest-devstack-vm-neutron/4518 : SUCCESS in 24m 45s (non-voting)\n- http://logs.openstack.org/36839/10/check/gate-grenade-devstack-vm/18779 : SUCCESS in 27m 18s (non-voting)\n","accounts_in_message":[],"_revision_number":10},{"id":"a9e7094d9b68c2c39f77d6b26bdab695f5907af4","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-17 05:01:50.000000000","message":"Patch Set 10: Verified\n\nBuild succeeded.\n\n- http://docs-draft.openstack.org/36839/10/gate/gate-keystone-docs/4726/doc/build/html/ : SUCCESS in 6m 40s\n- http://logs.openstack.org/36839/10/gate/gate-keystone-pep8/6353 : SUCCESS in 2m 01s\n- http://logs.openstack.org/36839/10/gate/gate-keystone-python26/5236 : SUCCESS in 11m 40s\n- http://logs.openstack.org/36839/10/gate/gate-keystone-python27/5257 : SUCCESS in 7m 58s\n- http://logs.openstack.org/36839/10/gate/gate-tempest-devstack-vm-full/32961 : SUCCESS in 46m 14s\n- http://logs.openstack.org/36839/10/gate/gate-tempest-devstack-vm-postgres-full/32651 : SUCCESS in 58m 59s\n- http://logs.openstack.org/36839/10/gate/gate-tempest-devstack-vm-neutron/4559 : SUCCESS in 18m 57s (non-voting)\n- http://logs.openstack.org/36839/10/gate/gate-grenade-devstack-vm/18812 : SUCCESS in 22m 27s (non-voting)\n","accounts_in_message":[],"_revision_number":10},{"id":"111a776c7f09d22ccbeec4521f487cf6985391d2","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-17 05:01:51.000000000","message":"Change has been successfully merged into the git repository.","accounts_in_message":[],"_revision_number":10}],"current_revision_number":10,"current_revision":"88c319e6bce98082f9a90b8b27726793d5366326","revisions":{"baa9d050492b8642a244cbce37a7339128249ae5":{"kind":"REWORK","_number":1,"created":"2013-07-12 14:25:08.000000000","uploader":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"ref":"refs/changes/39/36839/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/keystone","ref":"refs/changes/39/36839/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/keystone refs/changes/39/36839/1"}}},"commit":{"parents":[{"commit":"0aa79c80c427a26ccb474062d2dcb9c0baf810f1","subject":"Implements Pluggable V2 Token Provider","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/0aa79c80c427a26ccb474062d2dcb9c0baf810f1"}]}],"author":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-12 14:23:38.000000000","tz":-240},"committer":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-12 14:23:38.000000000","tz":-240},"subject":"Pluggable Remote User","message":"Pluggable Remote User\n\nSelect the code to handle REMOTE_USER based on a config file option\n\nblueprint pluggable-remote-user\n\nChange-Id: I9dda6dbe073f03806bdf539db6faa01644109f1c\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/baa9d050492b8642a244cbce37a7339128249ae5"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/baa9d050492b8642a244cbce37a7339128249ae5"}]},"branch":"refs/heads/master"},"d19f36b9923cbd649bf10861d2c11941e7daed5a":{"kind":"REWORK","_number":2,"created":"2013-07-15 17:43:43.000000000","uploader":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"ref":"refs/changes/39/36839/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/keystone","ref":"refs/changes/39/36839/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/keystone refs/changes/39/36839/2"}}},"commit":{"parents":[{"commit":"6283e55454b10f671323f4370aeef901046be016","subject":"Implements Pluggable V2 Token Provider","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/6283e55454b10f671323f4370aeef901046be016"}]}],"author":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-12 14:23:38.000000000","tz":-240},"committer":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-15 17:40:55.000000000","tz":-240},"subject":"Pluggable Remote User","message":"Pluggable Remote User\n\nSelect the code to handle REMOTE_USER based on a config file option\n\nFixes the REMOTE_USER logic to get the domain name from\nREALM, which is the least surprise option.\n\nDisregards the auth_data passed in, as we should be using REMOTE_USER\nto get the user name.\n\nblueprint pluggable-remote-user\n\nChange-Id: I9dda6dbe073f03806bdf539db6faa01644109f1c\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/d19f36b9923cbd649bf10861d2c11941e7daed5a"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/d19f36b9923cbd649bf10861d2c11941e7daed5a"}]},"branch":"refs/heads/master"},"fc16a553f62d1de54062180f101e8778760ada5d":{"kind":"REWORK","_number":3,"created":"2013-07-15 19:03:49.000000000","uploader":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"ref":"refs/changes/39/36839/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/keystone","ref":"refs/changes/39/36839/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/keystone refs/changes/39/36839/3"}}},"commit":{"parents":[{"commit":"6283e55454b10f671323f4370aeef901046be016","subject":"Implements Pluggable V2 Token Provider","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/6283e55454b10f671323f4370aeef901046be016"}]}],"author":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-12 14:23:38.000000000","tz":-240},"committer":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-15 18:50:07.000000000","tz":-240},"subject":"Pluggable Remote User","message":"Pluggable Remote User\n\nSelect the code to handle REMOTE_USER based on a config file option\n\nFixes the REMOTE_USER logic to get the domain name from\nREALM, which is the least surprise option.\n\nDisregards the auth_data passed in, as we should be using REMOTE_USER\nto get the user name.\n\nblueprint pluggable-remote-user\n\nChange-Id: I9dda6dbe073f03806bdf539db6faa01644109f1c\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/fc16a553f62d1de54062180f101e8778760ada5d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/fc16a553f62d1de54062180f101e8778760ada5d"}]},"branch":"refs/heads/master"},"9d481acbc07d0cda2c2ebfe5f37650b559555f21":{"kind":"TRIVIAL_REBASE","_number":4,"created":"2013-07-15 19:03:49.000000000","uploader":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"ref":"refs/changes/39/36839/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/keystone","ref":"refs/changes/39/36839/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/keystone refs/changes/39/36839/4"}}},"commit":{"parents":[{"commit":"ee27d6eef62d201c99694d0f788ea2a96c6669a4","subject":"Implements Pluggable V2 Token Provider","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/ee27d6eef62d201c99694d0f788ea2a96c6669a4"}]}],"author":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-12 14:23:38.000000000","tz":-240},"committer":{"name":"Gerrit Code Review","email":"review@openstack.org","date":"2013-07-15 21:16:53.000000000","tz":0},"subject":"Pluggable Remote User","message":"Pluggable Remote User\n\nSelect the code to handle REMOTE_USER based on a config file option\n\nFixes the REMOTE_USER logic to get the domain name from\nREALM, which is the least surprise option.\n\nDisregards the auth_data passed in, as we should be using REMOTE_USER\nto get the user name.\n\nblueprint pluggable-remote-user\n\nChange-Id: I9dda6dbe073f03806bdf539db6faa01644109f1c\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/9d481acbc07d0cda2c2ebfe5f37650b559555f21"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/9d481acbc07d0cda2c2ebfe5f37650b559555f21"}]},"branch":"refs/heads/master"},"15f4b70de37327064c3a8bf08a0e05787f997829":{"kind":"REWORK","_number":5,"created":"2013-07-16 01:36:55.000000000","uploader":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"ref":"refs/changes/39/36839/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/keystone","ref":"refs/changes/39/36839/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/keystone refs/changes/39/36839/5"}}},"commit":{"parents":[{"commit":"ee27d6eef62d201c99694d0f788ea2a96c6669a4","subject":"Implements Pluggable V2 Token Provider","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/ee27d6eef62d201c99694d0f788ea2a96c6669a4"}]}],"author":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-12 14:23:38.000000000","tz":-240},"committer":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-16 01:36:42.000000000","tz":-240},"subject":"Pluggable Remote User","message":"Pluggable Remote User\n\nSelect the code to handle REMOTE_USER based on a config file option\n\nFixes the REMOTE_USER logic to get the domain name from\nREALM, which is the least surprise option.\n\nDisregards the auth_data passed in, as we should be using REMOTE_USER\nto get the user name.\n\nExternal Plugin is inow executed in conjunction with the auth methods,\nas opposed to in place of them.\n\nblueprint pluggable-remote-user\n\nChange-Id: I9dda6dbe073f03806bdf539db6faa01644109f1c\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/15f4b70de37327064c3a8bf08a0e05787f997829"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/15f4b70de37327064c3a8bf08a0e05787f997829"}]},"branch":"refs/heads/master"},"8894cf0c9b1003dbd1679d3c89dd8b64b243ded8":{"kind":"REWORK","_number":6,"created":"2013-07-16 16:57:28.000000000","uploader":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"ref":"refs/changes/39/36839/6","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/keystone","ref":"refs/changes/39/36839/6","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/keystone refs/changes/39/36839/6"}}},"commit":{"parents":[{"commit":"ee27d6eef62d201c99694d0f788ea2a96c6669a4","subject":"Implements Pluggable V2 Token Provider","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/ee27d6eef62d201c99694d0f788ea2a96c6669a4"}]}],"author":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-12 14:23:38.000000000","tz":-240},"committer":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-16 16:57:11.000000000","tz":-240},"subject":"Pluggable Remote User","message":"Pluggable Remote User\n\nSelect the code to handle REMOTE_USER based on a config file option\n\nFixes the REMOTE_USER logic to get the domain name from\nREALM, which is the least surprise option.\n\nDisregards the auth_data passed in, as we should be using REMOTE_USER\nto get the user name.\n\nExternal Plugin is inow executed in conjunction with the auth methods,\nas opposed to in place of them.\n\nblueprint pluggable-remote-user\n\nChange-Id: I9dda6dbe073f03806bdf539db6faa01644109f1c\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/8894cf0c9b1003dbd1679d3c89dd8b64b243ded8"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/8894cf0c9b1003dbd1679d3c89dd8b64b243ded8"}]},"branch":"refs/heads/master"},"580abdcbd7e09c231bb5698db9088ce7563bcc73":{"kind":"REWORK","_number":7,"created":"2013-07-16 20:00:58.000000000","uploader":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"ref":"refs/changes/39/36839/7","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/keystone","ref":"refs/changes/39/36839/7","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/7 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/7 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/7 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/keystone refs/changes/39/36839/7"}}},"commit":{"parents":[{"commit":"ee27d6eef62d201c99694d0f788ea2a96c6669a4","subject":"Implements Pluggable V2 Token Provider","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/ee27d6eef62d201c99694d0f788ea2a96c6669a4"}]}],"author":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-12 14:23:38.000000000","tz":-240},"committer":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-16 19:59:47.000000000","tz":-240},"subject":"Pluggable Remote User","message":"Pluggable Remote User\n\nSelect the code to handle REMOTE_USER based on a config file option\n\nFixes the REMOTE_USER logic to get the domain name from\nREALM, which is the least surprise option.\n\nDisregards the auth_data passed in, as we should be using REMOTE_USER\nto get the user name.\n\nExternal Plugin is inow executed in conjunction with the auth methods,\nas opposed to in place of them.\n\nblueprint pluggable-remote-user\n\nChange-Id: I9dda6dbe073f03806bdf539db6faa01644109f1c\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/580abdcbd7e09c231bb5698db9088ce7563bcc73"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/580abdcbd7e09c231bb5698db9088ce7563bcc73"}]},"branch":"refs/heads/master"},"7ad2aab3b21174be4cf349f8cde1f7930a961986":{"kind":"REWORK","_number":8,"created":"2013-07-16 21:38:15.000000000","uploader":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"ref":"refs/changes/39/36839/8","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/keystone","ref":"refs/changes/39/36839/8","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/8 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/8 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/8 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/keystone refs/changes/39/36839/8"}}},"commit":{"parents":[{"commit":"ee27d6eef62d201c99694d0f788ea2a96c6669a4","subject":"Implements Pluggable V2 Token Provider","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/ee27d6eef62d201c99694d0f788ea2a96c6669a4"}]}],"author":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-12 14:23:38.000000000","tz":-240},"committer":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-16 21:35:51.000000000","tz":-240},"subject":"Pluggable Remote User","message":"Pluggable Remote User\n\nSelect the code to handle REMOTE_USER based on a config file option\n\nFixes the REMOTE_USER logic to get the domain name from\nREALM, which is the least surprise option.\n\nDisregards the auth_data passed in, as we should be using REMOTE_USER\nto get the user name.\n\nExternal Plugin is now executed in conjunction with the auth methods,\nas opposed to in place of them.\n\nDocImpact\n\nblueprint pluggable-remote-user\n\nChange-Id: I9dda6dbe073f03806bdf539db6faa01644109f1c\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/7ad2aab3b21174be4cf349f8cde1f7930a961986"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/7ad2aab3b21174be4cf349f8cde1f7930a961986"}]},"branch":"refs/heads/master"},"426b612b56ca5f9fc1d6af922b918641a2d533c7":{"kind":"REWORK","_number":9,"created":"2013-07-16 23:58:15.000000000","uploader":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"ref":"refs/changes/39/36839/9","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/keystone","ref":"refs/changes/39/36839/9","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/9 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/9 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/9 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/keystone refs/changes/39/36839/9"}}},"commit":{"parents":[{"commit":"ee27d6eef62d201c99694d0f788ea2a96c6669a4","subject":"Implements Pluggable V2 Token Provider","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/ee27d6eef62d201c99694d0f788ea2a96c6669a4"}]}],"author":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-12 14:23:38.000000000","tz":-240},"committer":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-16 23:51:19.000000000","tz":-240},"subject":"Pluggable Remote User","message":"Pluggable Remote User\n\nSelect the code to handle REMOTE_USER based on a config file option\n\nFixes the REMOTE_USER logic to get the domain name from\nREALM, which is the least surprise option.\n\nDisregards the auth_data passed in, as we should be using REMOTE_USER\nto get the user name.\n\nExternal Plugin is now executed in conjunction with the auth methods,\nas opposed to in place of them.\n\nDocImpact\n\nblueprint pluggable-remote-user\n\nChange-Id: I9dda6dbe073f03806bdf539db6faa01644109f1c\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/426b612b56ca5f9fc1d6af922b918641a2d533c7"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/426b612b56ca5f9fc1d6af922b918641a2d533c7"}]},"branch":"refs/heads/master"},"88c319e6bce98082f9a90b8b27726793d5366326":{"kind":"TRIVIAL_REBASE","_number":10,"created":"2013-07-17 02:52:10.000000000","uploader":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"ref":"refs/changes/39/36839/10","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/keystone","ref":"refs/changes/39/36839/10","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/10 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/10 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/keystone refs/changes/39/36839/10 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/keystone refs/changes/39/36839/10"}}},"commit":{"parents":[{"commit":"3a56c8a68d0f033266f98963261a6d724e506966","subject":"Merge \"Implements Pluggable V2 Token Provider\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/3a56c8a68d0f033266f98963261a6d724e506966"}]}],"author":{"name":"Adam Young","email":"ayoung@redhat.com","date":"2013-07-12 14:23:38.000000000","tz":-240},"committer":{"name":"Jamie Lennox","email":"jamielennox@gmail.com","date":"2013-07-17 02:45:52.000000000","tz":600},"subject":"Pluggable Remote User","message":"Pluggable Remote User\n\nSelect the code to handle REMOTE_USER based on a config file option\n\nFixes the REMOTE_USER logic to get the domain name from\nREALM, which is the least surprise option.\n\nDisregards the auth_data passed in, as we should be using REMOTE_USER\nto get the user name.\n\nExternal Plugin is now executed in conjunction with the auth methods,\nas opposed to in place of them.\n\nDocImpact\n\nblueprint pluggable-remote-user\n\nChange-Id: I9dda6dbe073f03806bdf539db6faa01644109f1c\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/88c319e6bce98082f9a90b8b27726793d5366326"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/88c319e6bce98082f9a90b8b27726793d5366326"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
