)]}'
{"id":"openstack%2Fkeystoneauth~1002219","triplet_id":"openstack%2Fkeystoneauth~master~Ibbfa404c0d7b3bb24f6ad5e8c54d58bb753f1968","project":"openstack/keystoneauth","branch":"master","topic":"bug/2164939","attention_set":{},"removed_from_attention_set":{"4690":{"account":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"last_update":"2026-08-25 12:02:28.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"Ibbfa404c0d7b3bb24f6ad5e8c54d58bb753f1968","subject":"Delegate get_endpoint_data in ServiceTokenAuthWrapper","status":"MERGED","created":"2026-08-24 23:46:57.000000000","updated":"2026-08-25 12:03:45.000000000","submitted":"2026-08-25 12:02:28.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":"1002219-bug/2164939","meta_rev_id":"e1380a5b91a7fb95d3b44f71d45023b03b282f0a","_number":1002219,"virtual_id_number":1002219,"owner":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-08-25 12:02:28.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":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"all":[{"value":2,"date":"2026-08-25 10:25:06.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"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":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"all":[{"value":1,"date":"2026-08-25 10:25:06.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"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":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-08-25 01:14:45.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"},{"updated":"2026-08-25 10:25:06.000000000","updated_by":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"reviewer":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"state":"REVIEWER"}],"messages":[{"id":"c65c764c530aa82c9c6390eaaf3c608f8858aec6","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2026-08-24 23:46:57.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"4a2d2fe8ba739a0f423a1a1e33e6e28c244f0685","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-25 01:14:45.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/a4337744077a42559b44fac3af4d8669\n\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/ba79832c6c2b4291bf338d81ae460eb3 : SUCCESS in 1h 25m 37s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/55a3677de5c34e3790b9f95803b1b7fb : SUCCESS in 7m 56s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/0a1884e420314da9a414a9addc893467 : SUCCESS in 6m 34s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/472ae44243b04c11a8490d6092a0802a : SUCCESS in 7m 20s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/51314e4a47354b75b0de1cfa6c82bb6c : SUCCESS in 4m 55s\n- openstack-tox-py315 https://zuul.opendev.org/t/openstack/build/dc383b34a70349a1acff5b6d0430edfd : SUCCESS in 14m 11s (non-voting)\n- openstacksdk-functional-devstack-tips https://zuul.opendev.org/t/openstack/build/4439e57867cc4a16baec1f5b0dd36c34 : SUCCESS in 1h 03m 14s\n- osc-tox-py311-tips https://zuul.opendev.org/t/openstack/build/a87a6c0806e542afa19fade782f332d9 : SUCCESS in 4m 28s\n- osc-tox-py314-tips https://zuul.opendev.org/t/openstack/build/07515443790145b695870fa7789902ff : SUCCESS in 7m 18s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/4f25875357ae4f5eb09b9f136d7cdf82 : SUCCESS in 9m 33s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/5bf458efdbb2461a8f4f3bd5da2af2c5 : SUCCESS in 5m 04s","accounts_in_message":[],"_revision_number":1},{"id":"89f6a0afe22590d9643f6b386aae7e5027e27387","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-08-25 10:25:06.000000000","message":"Patch Set 1: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":1},{"id":"6d15c8010c5658508539a38ed043643393138d72","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-25 10:25:30.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"359596152efac574e7471a28824c7d54e397660a","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-25 12:02:28.000000000","message":"Patch Set 1: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/85934aa8e4cc4fc79407555042ff65bd\n\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/dc4e34e2bf77409da7d1f1c6d198b001 : SUCCESS in 1h 35m 42s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/ca032d2cee904ca18f45701c0cd34311 : SUCCESS in 7m 54s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/82a75e7f66a447e3923cb081bdbc87ed : SUCCESS in 7m 56s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/d70fe5504c334743a1c582d7475d2879 : SUCCESS in 8m 42s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/7be2c6a4581c436c8375fbdf52560437 : SUCCESS in 9m 22s\n- openstacksdk-functional-devstack-tips https://zuul.opendev.org/t/openstack/build/b4f7ee7309b1496b8edcbd92c7942173 : SUCCESS in 1h 02m 01s\n- osc-tox-py311-tips https://zuul.opendev.org/t/openstack/build/747673f078b14a2e94759a06042fe0bb : SUCCESS in 5m 04s\n- osc-tox-py314-tips https://zuul.opendev.org/t/openstack/build/21a49978f4d4477cb5984978be453ab2 : SUCCESS in 7m 09s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/b22d2d31c6ce471ebfc66ac4422cfe11 : SUCCESS in 8m 33s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/90edac173f0c457080f7d1c8da1fe127 : SUCCESS in 6m 02s","accounts_in_message":[],"_revision_number":1},{"id":"b82f0d36a6895158511a7de402f50c0059ca87e5","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-25 12:02:28.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":1},{"id":"e1380a5b91a7fb95d3b44f71d45023b03b282f0a","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-25 12:03:45.000000000","message":"Patch Set 1:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/27ff834bb3464760a802a0ccb58a7b21\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d9e118f1cfbc4fd9885e946c0ddefc06 : SUCCESS in 50s","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"e46ea230a5ace162f580402c02575bef26eba067","revisions":{"e46ea230a5ace162f580402c02575bef26eba067":{"kind":"REWORK","_number":1,"created":"2026-08-24 23:46:57.000000000","uploader":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"ref":"refs/changes/19/1002219/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/keystoneauth","ref":"refs/changes/19/1002219/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/keystoneauth refs/changes/19/1002219/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/keystoneauth refs/changes/19/1002219/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/keystoneauth refs/changes/19/1002219/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/keystoneauth refs/changes/19/1002219/1"}}},"commit":{"parents":[{"commit":"b1ecc5efc70dea6c080c69bff084412e9a94a200","subject":"Merge \"pre-commit: Bump versions\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystoneauth/commit/b1ecc5efc70dea6c080c69bff084412e9a94a200"}]}],"author":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2026-08-24 19:31:32.000000000","tz":-420},"committer":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2026-08-24 23:46:22.000000000","tz":-420},"subject":"Delegate get_endpoint_data in ServiceTokenAuthWrapper","message":"Delegate get_endpoint_data in ServiceTokenAuthWrapper\n\nServiceTokenAuthWrapper delegates get_endpoint() and get_token() to\nuser_auth but not get_endpoint_data() or get_api_major_version().\nThis causes openstacksdk to fail during proxy creation when no\nendpoint_override is configured, because BaseAuthPlugin\u0027s default\nget_endpoint_data() returns None and the SDK raises NotSupported.\n\nThis is not a problem for keystoneauth1 adapters because they use\nget_endpoint() for HTTP calls, which is delegated. But openstacksdk\u0027s\n_make_proxy calls get_api_major_version() for version discovery, which\ncalls get_endpoint_data(), hitting the unimplemented base class default.\n\nAdd get_endpoint_data() and get_api_major_version() delegations to\nServiceTokenAuthWrapper so that openstacksdk version discovery works\ncorrectly with composite auth plugins.\n\nAdd a regression test that exercises the SDK\u0027s version discovery path\nthrough an Adapter with no endpoint_override, which triggers the\nget_api_major_version() → get_endpoint_data() chain through\nServiceTokenAuthWrapper.\n\nCloses-Bug: #2164939\nAssisted-by: Claude claude-opus-4-6 claude-code-2.1.241\nChange-Id: Ibbfa404c0d7b3bb24f6ad5e8c54d58bb753f1968\nSigned-off-by: melanie witt \u003cmelwittt@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystoneauth/commit/e46ea230a5ace162f580402c02575bef26eba067"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystoneauth/commit/e46ea230a5ace162f580402c02575bef26eba067"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"CLOSED","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY","applied_by":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"}}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dMAX"],"failing_atoms":["label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dMAX"],"failing_atoms":["label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dMAX"],"failing_atoms":["label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
