)]}'
{"id":"openstack%2Fkeystone~585782","triplet_id":"openstack%2Fkeystone~master~Ib906c42e1dd2c2408ccd2e256ffd876af02af3fe","project":"openstack/keystone","branch":"master","topic":"bug/1779205","hashtags":[],"change_id":"Ib906c42e1dd2c2408ccd2e256ffd876af02af3fe","subject":"Reduce duplication in federated auth APIs","status":"MERGED","created":"2018-07-25 15:20:36.000000000","updated":"2018-07-26 10:11:48.000000000","submitted":"2018-07-26 10:11:48.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"585782-1532599908437-c931d955","meta_rev_id":"a1b90f236c00e72d697e5d942f1f06e258bc7a23","_number":585782,"virtual_id_number":585782,"owner":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":14288,"name":"Matthew Thode","display_name":"prometheanfire","email":"mthode@mthode.org","username":"prometheanfire"},{"value":0,"_account_id":16465,"name":"Kristi Nikolla","email":"knikolla@bu.edu","username":"knikolla"},{"value":0,"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},{"value":0,"_account_id":21420,"name":"Gage Hugo","email":"gagehugo@gmail.com","username":"ghugo"},{"value":2,"date":"2018-07-26 10:11:48.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":16465,"name":"Kristi Nikolla","email":"knikolla@bu.edu","username":"knikolla"},"recommended":{"_account_id":14288,"name":"Matthew Thode","display_name":"prometheanfire","email":"mthode@mthode.org","username":"prometheanfire"},"all":[{"value":1,"date":"2018-07-25 22:30:20.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":14288,"name":"Matthew Thode","display_name":"prometheanfire","email":"mthode@mthode.org","username":"prometheanfire"},{"value":2,"date":"2018-07-25 15:22:28.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":16465,"name":"Kristi Nikolla","email":"knikolla@bu.edu","username":"knikolla"},{"value":2,"date":"2018-07-25 15:23:05.000000000","_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},{"value":2,"date":"2018-07-25 15:22:04.000000000","_account_id":21420,"name":"Gage Hugo","email":"gagehugo@gmail.com","username":"ghugo"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"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":"","value":1,"default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":16465,"name":"Kristi Nikolla","email":"knikolla@bu.edu","username":"knikolla"},"all":[{"value":0,"_account_id":14288,"name":"Matthew Thode","display_name":"prometheanfire","email":"mthode@mthode.org","username":"prometheanfire"},{"value":1,"date":"2018-07-25 15:22:28.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":16465,"name":"Kristi Nikolla","email":"knikolla@bu.edu","username":"knikolla"},{"value":1,"date":"2018-07-25 15:23:05.000000000","_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},{"value":0,"_account_id":21420,"name":"Gage Hugo","email":"gagehugo@gmail.com","username":"ghugo"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},{"_account_id":14288,"name":"Matthew Thode","display_name":"prometheanfire","email":"mthode@mthode.org","username":"prometheanfire"},{"_account_id":16465,"name":"Kristi Nikolla","email":"knikolla@bu.edu","username":"knikolla"},{"_account_id":21420,"name":"Gage Hugo","email":"gagehugo@gmail.com","username":"ghugo"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2018-07-25 15:22:04.000000000","updated_by":{"_account_id":21420,"name":"Gage Hugo","email":"gagehugo@gmail.com","username":"ghugo"},"reviewer":{"_account_id":21420,"name":"Gage Hugo","email":"gagehugo@gmail.com","username":"ghugo"},"state":"REVIEWER"},{"updated":"2018-07-25 15:22:28.000000000","updated_by":{"_account_id":16465,"name":"Kristi Nikolla","email":"knikolla@bu.edu","username":"knikolla"},"reviewer":{"_account_id":16465,"name":"Kristi Nikolla","email":"knikolla@bu.edu","username":"knikolla"},"state":"REVIEWER"},{"updated":"2018-07-25 15:23:05.000000000","updated_by":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"reviewer":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"state":"REVIEWER"},{"updated":"2018-07-25 22:30:20.000000000","updated_by":{"_account_id":14288,"name":"Matthew Thode","display_name":"prometheanfire","email":"mthode@mthode.org","username":"prometheanfire"},"reviewer":{"_account_id":14288,"name":"Matthew Thode","display_name":"prometheanfire","email":"mthode@mthode.org","username":"prometheanfire"},"state":"REVIEWER"},{"updated":"2018-07-26 10:11:48.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"}],"messages":[{"id":"86f305a1e9fe03d6fad369f8ab4820d35036db8c","author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"date":"2018-07-25 15:20:36.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"bf68f877ae920c76d75cae1c80cd35e6ae56c8f2","author":{"_account_id":21420,"name":"Gage Hugo","email":"gagehugo@gmail.com","username":"ghugo"},"date":"2018-07-25 15:22:04.000000000","message":"Patch Set 1: Code-Review+2","accounts_in_message":[],"_revision_number":1},{"id":"aa493877f1dfa91dab271fb1aebf68745ef338fc","author":{"_account_id":16465,"name":"Kristi Nikolla","email":"knikolla@bu.edu","username":"knikolla"},"date":"2018-07-25 15:22:28.000000000","message":"Patch Set 1: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":1},{"id":"63c26cf66c2e84445e948080564af69a3074287a","author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"date":"2018-07-25 15:23:05.000000000","message":"Patch Set 1: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":1},{"id":"1900ad3e1ae25a469e89f486c1a9dfaa1365aba1","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-07-25 18:39:56.000000000","message":"Patch Set 1: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n\n- openstack-tox-pep8 http://logs.openstack.org/82/585782/1/check/openstack-tox-pep8/2e21dc0/ : SUCCESS in 7m 05s\n- openstack-tox-py27 http://logs.openstack.org/82/585782/1/check/openstack-tox-py27/a42f1dc/ : SUCCESS in 12m 02s\n- openstack-tox-py35 http://logs.openstack.org/82/585782/1/check/openstack-tox-py35/21d0f8a/ : TIMED_OUT in 41m 42s\n- build-openstack-sphinx-docs http://logs.openstack.org/82/585782/1/check/build-openstack-sphinx-docs/7ce9fe3/html/ : SUCCESS in 7m 37s\n- tempest-full http://logs.openstack.org/82/585782/1/check/tempest-full/7d19e73/ : SUCCESS in 1h 41m 58s\n- neutron-grenade http://logs.openstack.org/82/585782/1/check/neutron-grenade/9875e2d/ : SUCCESS in 55m 19s\n- tempest-full-py3 http://logs.openstack.org/82/585782/1/check/tempest-full-py3/c5d1a52/ : SUCCESS in 1h 21m 47s\n- legacy-keystoneclient-dsvm-functional http://logs.openstack.org/82/585782/1/check/legacy-keystoneclient-dsvm-functional/955ef31/ : SUCCESS in 32m 46s (non-voting)\n- openstack-tox-cover http://logs.openstack.org/82/585782/1/check/openstack-tox-cover/bf713ab/cover/ : SUCCESS in 14m 37s\n- legacy-tempest-dsvm-ldap-domain-specific-driver http://logs.openstack.org/82/585782/1/check/legacy-tempest-dsvm-ldap-domain-specific-driver/37570b9/ : FAILURE in 1h 50m 12s (non-voting)\n- keystone-dsvm-functional http://logs.openstack.org/82/585782/1/check/keystone-dsvm-functional/0d8b2ab/ : SUCCESS in 34m 33s\n- keystone-dsvm-functional-v3-only http://logs.openstack.org/82/585782/1/check/keystone-dsvm-functional-v3-only/963b858/ : SUCCESS in 43m 24s (non-voting)\n- keystone-dsvm-py35-functional-v3-only http://logs.openstack.org/82/585782/1/check/keystone-dsvm-py35-functional-v3-only/912be6d/ : SUCCESS in 40m 09s (non-voting)\n- openstack-ansible-keystone-rolling-upgrade http://logs.openstack.org/82/585782/1/check/openstack-ansible-keystone-rolling-upgrade/6771df1/ : FAILURE in 18m 06s (non-voting)\n- openstack-tox-lower-constraints http://logs.openstack.org/82/585782/1/check/openstack-tox-lower-constraints/e5dc1f4/ : TIMED_OUT in 41m 57s","accounts_in_message":[],"_revision_number":1},{"id":"12b452d6847b631db5bd049dc4f2dc09237b7bf4","author":{"_account_id":21420,"name":"Gage Hugo","email":"gagehugo@gmail.com","username":"ghugo"},"date":"2018-07-25 19:03:03.000000000","message":"Patch Set 1:\n\nrecheck","accounts_in_message":[],"_revision_number":1},{"id":"65d27f263d652bf7e5337fedbeae5dcc37dd553c","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-07-25 21:19:30.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-pep8 http://logs.openstack.org/82/585782/1/check/openstack-tox-pep8/b801a88/ : SUCCESS in 7m 32s\n- openstack-tox-py27 http://logs.openstack.org/82/585782/1/check/openstack-tox-py27/d7608d5/ : SUCCESS in 13m 55s\n- openstack-tox-py35 http://logs.openstack.org/82/585782/1/check/openstack-tox-py35/b18dbf0/ : SUCCESS in 23m 15s\n- build-openstack-sphinx-docs http://logs.openstack.org/82/585782/1/check/build-openstack-sphinx-docs/a2e5c9f/html/ : SUCCESS in 7m 21s\n- tempest-full http://logs.openstack.org/82/585782/1/check/tempest-full/1fa0e8d/ : SUCCESS in 1h 30m 58s\n- neutron-grenade http://logs.openstack.org/82/585782/1/check/neutron-grenade/f043203/ : SUCCESS in 57m 57s\n- tempest-full-py3 http://logs.openstack.org/82/585782/1/check/tempest-full-py3/e2b1572/ : SUCCESS in 1h 24m 01s\n- legacy-keystoneclient-dsvm-functional http://logs.openstack.org/82/585782/1/check/legacy-keystoneclient-dsvm-functional/d34014b/ : SUCCESS in 31m 51s (non-voting)\n- openstack-tox-cover http://logs.openstack.org/82/585782/1/check/openstack-tox-cover/5acf0c3/cover/ : SUCCESS in 15m 13s\n- legacy-tempest-dsvm-ldap-domain-specific-driver http://logs.openstack.org/82/585782/1/check/legacy-tempest-dsvm-ldap-domain-specific-driver/607a0c9/ : SUCCESS in 1h 35m 54s (non-voting)\n- keystone-dsvm-functional http://logs.openstack.org/82/585782/1/check/keystone-dsvm-functional/29b6367/ : SUCCESS in 31m 55s\n- keystone-dsvm-functional-v3-only http://logs.openstack.org/82/585782/1/check/keystone-dsvm-functional-v3-only/daefbf6/ : SUCCESS in 30m 38s (non-voting)\n- keystone-dsvm-py35-functional-v3-only http://logs.openstack.org/82/585782/1/check/keystone-dsvm-py35-functional-v3-only/9aedd07/ : SUCCESS in 29m 59s (non-voting)\n- openstack-ansible-keystone-rolling-upgrade http://logs.openstack.org/82/585782/1/check/openstack-ansible-keystone-rolling-upgrade/cf5e176/ : FAILURE in 22m 54s (non-voting)\n- openstack-tox-lower-constraints http://logs.openstack.org/82/585782/1/check/openstack-tox-lower-constraints/2af29f3/ : SUCCESS in 12m 12s","accounts_in_message":[],"_revision_number":1},{"id":"04d8c33ae510865d5068c294474a8b3400775b60","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-07-25 21:21:32.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"a02d9585beffb8cea94a75a32a0a11d1c35b21ba","author":{"_account_id":14288,"name":"Matthew Thode","display_name":"prometheanfire","email":"mthode@mthode.org","username":"prometheanfire"},"date":"2018-07-25 22:30:20.000000000","message":"Patch Set 1: Code-Review+1\n\nreplying for tracking","accounts_in_message":[],"_revision_number":1},{"id":"2afef47d04465127c117ff539f886a1d6be5276f","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-07-26 05:05:12.000000000","message":"Patch Set 1: Verified-2\n\nBuild failed (gate pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n\n- openstack-tox-pep8 http://logs.openstack.org/82/585782/1/gate/openstack-tox-pep8/f5a07dd/ : SUCCESS in 9m 52s\n- openstack-tox-py27 http://logs.openstack.org/82/585782/1/gate/openstack-tox-py27/01314fe/ : SUCCESS in 31m 59s\n- openstack-tox-py35 http://logs.openstack.org/82/585782/1/gate/openstack-tox-py35/c7acb32/ : TIMED_OUT in 40m 52s\n- build-openstack-sphinx-docs http://logs.openstack.org/82/585782/1/gate/build-openstack-sphinx-docs/2989369/html/ : SUCCESS in 7m 52s\n- tempest-full http://logs.openstack.org/82/585782/1/gate/tempest-full/778a68c/ : SUCCESS in 1h 46m 05s\n- neutron-grenade http://logs.openstack.org/82/585782/1/gate/neutron-grenade/f3e73a1/ : SUCCESS in 52m 56s\n- tempest-full-py3 http://logs.openstack.org/82/585782/1/gate/tempest-full-py3/7d1d25f/ : SUCCESS in 1h 45m 16s\n- keystone-dsvm-functional http://logs.openstack.org/82/585782/1/gate/keystone-dsvm-functional/f4e6650/ : SUCCESS in 35m 07s\n- openstack-tox-lower-constraints http://logs.openstack.org/82/585782/1/gate/openstack-tox-lower-constraints/7d3e89b/ : SUCCESS in 13m 56s","accounts_in_message":[],"_revision_number":1},{"id":"0c8b2ce387bd836ff2db48e37a8ae2e4231f3755","author":{"_account_id":21420,"name":"Gage Hugo","email":"gagehugo@gmail.com","username":"ghugo"},"date":"2018-07-26 05:08:18.000000000","message":"Patch Set 1:\n\nrecheck","accounts_in_message":[],"_revision_number":1},{"id":"0167b0e6ace90484419e480fcaded60b143b017d","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-07-26 06:43:41.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-pep8 http://logs.openstack.org/82/585782/1/check/openstack-tox-pep8/fdb7764/ : SUCCESS in 6m 47s\n- openstack-tox-py27 http://logs.openstack.org/82/585782/1/check/openstack-tox-py27/b0738c0/ : SUCCESS in 15m 05s\n- openstack-tox-py35 http://logs.openstack.org/82/585782/1/check/openstack-tox-py35/5eb1a61/ : SUCCESS in 17m 58s\n- build-openstack-sphinx-docs http://logs.openstack.org/82/585782/1/check/build-openstack-sphinx-docs/2ea0620/html/ : SUCCESS in 6m 02s\n- tempest-full http://logs.openstack.org/82/585782/1/check/tempest-full/c98bcef/ : SUCCESS in 1h 32m 32s\n- neutron-grenade http://logs.openstack.org/82/585782/1/check/neutron-grenade/11dd933/ : SUCCESS in 49m 21s\n- tempest-full-py3 http://logs.openstack.org/82/585782/1/check/tempest-full-py3/ba0b264/ : SUCCESS in 1h 27m 26s\n- legacy-keystoneclient-dsvm-functional http://logs.openstack.org/82/585782/1/check/legacy-keystoneclient-dsvm-functional/011b285/ : SUCCESS in 30m 19s (non-voting)\n- openstack-tox-cover http://logs.openstack.org/82/585782/1/check/openstack-tox-cover/9896723/cover/ : SUCCESS in 13m 39s\n- legacy-tempest-dsvm-ldap-domain-specific-driver http://logs.openstack.org/82/585782/1/check/legacy-tempest-dsvm-ldap-domain-specific-driver/0c2af37/ : SUCCESS in 1h 24m 44s (non-voting)\n- keystone-dsvm-functional http://logs.openstack.org/82/585782/1/check/keystone-dsvm-functional/0da8f0d/ : SUCCESS in 28m 38s\n- keystone-dsvm-functional-v3-only http://logs.openstack.org/82/585782/1/check/keystone-dsvm-functional-v3-only/2d14f52/ : FAILURE in 26m 50s (non-voting)\n- keystone-dsvm-py35-functional-v3-only http://logs.openstack.org/82/585782/1/check/keystone-dsvm-py35-functional-v3-only/e41e75b/ : SUCCESS in 30m 07s (non-voting)\n- openstack-ansible-keystone-rolling-upgrade http://logs.openstack.org/82/585782/1/check/openstack-ansible-keystone-rolling-upgrade/231970e/ : FAILURE in 19m 14s (non-voting)\n- openstack-tox-lower-constraints http://logs.openstack.org/82/585782/1/check/openstack-tox-lower-constraints/5822c0f/ : SUCCESS in 14m 44s","accounts_in_message":[],"_revision_number":1},{"id":"82ede9c77b63b34fb69d191ce73e40b8b346a405","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-07-26 06:44:20.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"eec94ac824e88a56ce92433dc4de49ee337791c6","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-07-26 10:11:48.000000000","message":"Patch Set 1: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- openstack-tox-pep8 http://logs.openstack.org/82/585782/1/gate/openstack-tox-pep8/240977c/ : SUCCESS in 7m 09s\n- openstack-tox-py27 http://logs.openstack.org/82/585782/1/gate/openstack-tox-py27/7d6d88d/ : SUCCESS in 14m 58s\n- openstack-tox-py35 http://logs.openstack.org/82/585782/1/gate/openstack-tox-py35/cd695c8/ : SUCCESS in 12m 52s\n- build-openstack-sphinx-docs http://logs.openstack.org/82/585782/1/gate/build-openstack-sphinx-docs/e436732/html/ : SUCCESS in 6m 10s\n- tempest-full http://logs.openstack.org/82/585782/1/gate/tempest-full/db4612b/ : SUCCESS in 1h 36m 07s\n- neutron-grenade http://logs.openstack.org/82/585782/1/gate/neutron-grenade/f4e11a1/ : SUCCESS in 1h 01m 15s\n- tempest-full-py3 http://logs.openstack.org/82/585782/1/gate/tempest-full-py3/bd37fa0/ : SUCCESS in 1h 20m 22s\n- keystone-dsvm-functional http://logs.openstack.org/82/585782/1/gate/keystone-dsvm-functional/72daab8/ : SUCCESS in 25m 39s\n- openstack-tox-lower-constraints http://logs.openstack.org/82/585782/1/gate/openstack-tox-lower-constraints/6c3d188/ : SUCCESS in 12m 58s","accounts_in_message":[],"_revision_number":1},{"id":"a21ecf6602b7919fa9943a0bbfc0ea20d2b84b60","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-07-26 10:11:48.000000000","message":"Change has been successfully merged by Zuul","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"df5d75571ed274b2964ed52048768c6d9f24d138","revisions":{"df5d75571ed274b2964ed52048768c6d9f24d138":{"kind":"REWORK","_number":1,"created":"2018-07-25 15:20:36.000000000","uploader":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"ref":"refs/changes/82/585782/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/keystone","ref":"refs/changes/82/585782/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/keystone refs/changes/82/585782/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/keystone refs/changes/82/585782/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/keystone refs/changes/82/585782/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/keystone refs/changes/82/585782/1"}}},"commit":{"parents":[{"commit":"2aa73187f65646a5e2b0be1cc5de0dfe6198b62f","subject":"Merge \"Trusts do not implement patch.\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/2aa73187f65646a5e2b0be1cc5de0dfe6198b62f"}]}],"author":{"name":"Lance Bragstad","email":"lbragstad@gmail.com","date":"2018-07-25 15:07:16.000000000","tz":0},"committer":{"name":"Lance Bragstad","email":"lbragstad@gmail.com","date":"2018-07-25 15:15:44.000000000","tz":0},"subject":"Reduce duplication in federated auth APIs","message":"Reduce duplication in federated auth APIs\n\nThe GET /v3/OS-FEDERATION/projects and GET /v3/OS-FEDERATION/domains\nAPIs were introduced to handle tokens from federated users, but now\nthat GET /v3/auth/projects and GET /v3/auth/domains know how to handle\nfederated tokens, they\u0027re just duplicate APIs.\n\nIn the past we deprecated these federated auth APIs, but they still\nused separate code paths from GET /v3/auth/projects and GET\n/v3/auth/domains. The two code paths are true duplication in that they\ndon\u0027t expect to differ over time and should provide the same user\nexperience.\n\nInstead of running the risk that comes with two code paths that do the\nsame thing, we should consolidate them.\n\nCo-Authored-By: Kristi Nikolla \u003ckristi@nikolla.me\u003e\n\nCloses-Bug: 1779205\nChange-Id: Ib906c42e1dd2c2408ccd2e256ffd876af02af3fe\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/df5d75571ed274b2964ed52048768c6d9f24d138"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/df5d75571ed274b2964ed52048768c6d9f24d138"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
