)]}'
{"id":"openstack%2Fopenstacksdk~981605","triplet_id":"openstack%2Fopenstacksdk~master~I5f81efad666c3af30b968f816069540273179cac","project":"openstack/openstacksdk","branch":"master","attention_set":{},"removed_from_attention_set":{"13478":{"account":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"last_update":"2026-03-21 09:13:16.000000000","reason":"\u003cGERRIT_ACCOUNT_13478\u003e replied on the change","reason_account":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"}}},"hashtags":[],"change_id":"I5f81efad666c3af30b968f816069540273179cac","subject":"Fix find_domain to resolve from token on Forbidden","status":"NEW","created":"2026-03-20 20:58:42.000000000","updated":"2026-03-21 10:33:11.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":true,"submittable":false,"total_comment_count":1,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"9a2717b47b05369d7d116fe17cae95f096eb4613","_number":981605,"virtual_id_number":981605,"owner":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:check","value":1,"date":"2026-03-21 10:33:11.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":"","value":1,"default_value":0,"optional":true},"Code-Review":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_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":{"all":[{"_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},"Allow-Post-Review":{"all":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{" 0":"Abstain","+1":"Approved for Zuul Post Review Pipeline"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-03-20 22:38:41.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":"ce9d45a00c6b3a5440f0d8fcfe1d790f46e93d35","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"date":"2026-03-20 20:58:42.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"aa4e5a3d7df7cfa67e7b5da86809db38c66ff17d","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-20 22:38:41.000000000","message":"Patch Set 1: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/6f9359bf58be4d9ebb9bed54575c8320\n\n- bifrost-integration-openstacksdk-src https://zuul.opendev.org/t/openstack/build/8fd06ae812b1405fa7768e51e6a62691 : SUCCESS in 40m 02s (non-voting)\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/4f54811e73184c54881723014208b36c : SUCCESS in 5m 37s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/eadb11fa3bd845acb4f9535597211769 : SUCCESS in 4m 18s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/ae5246dc07894c4a87495442e97e6aa5 : SUCCESS in 4m 10s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/524ceb694cbc4bb0b6a1286790b25a4f : SUCCESS in 5m 49s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/2fa0133c013640afb2a79e3f4e7cf1cb : SUCCESS in 8m 22s (non-voting)\n- openstacksdk-functional-devstack-tips https://zuul.opendev.org/t/openstack/build/90cc4efdee1c42ac94dcd1f4ed8dc62b : SUCCESS in 51m 51s\n- os-client-config-tox-py311-tips https://zuul.opendev.org/t/openstack/build/26df1d1b8a8441179521572094c231e4 : SUCCESS in 2m 50s\n- osc-tox-py310-tips https://zuul.opendev.org/t/openstack/build/348f46cd137e475bba366019d668b088 : SUCCESS in 4m 42s\n- osc-tox-py313-tips https://zuul.opendev.org/t/openstack/build/81255936fd304fe0ba0abd0334c63faa : SUCCESS in 6m 34s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/5eacb11e1cf94403a3134b4591943518 : SUCCESS in 14m 10s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/53368ee6ae984977903eec38d6aab823 : FAILURE in 57m 14s\n- openstacksdk-functional-devstack-networking https://zuul.opendev.org/t/openstack/build/282d2261588942c0a0608bef5e431999 : SUCCESS in 1h 31m 31s\n- openstacksdk-functional-devstack-networking-ext https://zuul.opendev.org/t/openstack/build/1295bcc4c3ca40148268b0c565454f5b : SUCCESS in 1h 18m 12s\n- openstacksdk-functional-devstack-magnum https://zuul.opendev.org/t/openstack/build/ef25b2eca8264cf8ab2d476bee0320b6 : FAILURE in 56m 38s (non-voting)\n- openstacksdk-functional-devstack-manila https://zuul.opendev.org/t/openstack/build/5e149883f03044e3b7e6ed6949940acf : SUCCESS in 34m 19s\n- openstacksdk-functional-devstack-masakari https://zuul.opendev.org/t/openstack/build/6239616bdd6442f29404504e1888a80e : SUCCESS in 29m 51s\n- openstacksdk-functional-devstack-ironic https://zuul.opendev.org/t/openstack/build/3d688214062f47988e4a5b935300b8ec : SUCCESS in 42m 57s\n- osc-functional-devstack-tips https://zuul.opendev.org/t/openstack/build/eb423adede8a4fac94745a92288f9648 : SUCCESS in 1h 18m 59s (non-voting)\n- ansible-collections-openstack-functional-devstack https://zuul.opendev.org/t/openstack/build/d4bd5bc85d6c408fb33cbda586c632de : SUCCESS in 1h 15m 11s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"287f5b8579abb7152dd4a13c6bac609b355a2cf8","author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"date":"2026-03-21 09:13:16.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"9a2717b47b05369d7d116fe17cae95f096eb4613","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-21 10:33:11.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/adbeef9c87724a28a4865b4a491a510b\n\n- bifrost-integration-openstacksdk-src https://zuul.opendev.org/t/openstack/build/62425cfba5fe4f8897a526b5cd8096d5 : SUCCESS in 40m 03s (non-voting)\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/388ff34e4a6142bc808cc675ce851bb7 : SUCCESS in 4m 54s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/703c2328ac2b4957a5b7abbee7b9d4a8 : SUCCESS in 3m 50s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/e211f47e1a1e4ff9b15776e463402d34 : SUCCESS in 2m 56s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/da6bb507f5a9423199d76304e7cd4a26 : SUCCESS in 2m 21s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/387ed6c9489f447092c46cca7b2ab3cc : SUCCESS in 4m 42s (non-voting)\n- openstacksdk-functional-devstack-tips https://zuul.opendev.org/t/openstack/build/345bf33c496349adb38cd77cdef833b0 : SUCCESS in 33m 49s\n- os-client-config-tox-py311-tips https://zuul.opendev.org/t/openstack/build/d7b2941168614dae9f8f94f44fb5e00e : SUCCESS in 3m 00s\n- osc-tox-py310-tips https://zuul.opendev.org/t/openstack/build/76144ea5e27f4570869ea9b8de2ab775 : SUCCESS in 3m 26s\n- osc-tox-py313-tips https://zuul.opendev.org/t/openstack/build/d27debe44e82408b84d8b51ba0a948f1 : SUCCESS in 4m 28s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/8881bee14c224e0b8c0401177b29a0c3 : SUCCESS in 10m 54s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/b2a670ce57c94b7fae5b0887debebfcf : SUCCESS in 51m 53s\n- openstacksdk-functional-devstack-networking https://zuul.opendev.org/t/openstack/build/10650d303d9a4a338bc62bc2e9d351c2 : SUCCESS in 1h 14m 28s\n- openstacksdk-functional-devstack-networking-ext https://zuul.opendev.org/t/openstack/build/8b1ea41f29864f16bbaa785c44832bf3 : SUCCESS in 1h 18m 09s\n- openstacksdk-functional-devstack-magnum https://zuul.opendev.org/t/openstack/build/2c5dbbac504a4acfb185ceb5440f58f8 : FAILURE in 30m 08s (non-voting)\n- openstacksdk-functional-devstack-manila https://zuul.opendev.org/t/openstack/build/4415b0815d514cbe9a516c449975d04c : SUCCESS in 24m 45s\n- openstacksdk-functional-devstack-masakari https://zuul.opendev.org/t/openstack/build/ecac67ca2d16441fb196d2853331094f : SUCCESS in 21m 09s\n- openstacksdk-functional-devstack-ironic https://zuul.opendev.org/t/openstack/build/d0e85e976bf143a68707663fa58eea8a : SUCCESS in 20m 34s\n- osc-functional-devstack-tips https://zuul.opendev.org/t/openstack/build/522f19d3c60f4a258a5dd78cd9d16ab1 : SUCCESS in 42m 24s (non-voting)\n- ansible-collections-openstack-functional-devstack https://zuul.opendev.org/t/openstack/build/79b67fdbd8b64c16a2478318f219300c : SUCCESS in 58m 16s (non-voting)","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"121f6a370d46ae7afb8baedeee0c817b309c4822","revisions":{"121f6a370d46ae7afb8baedeee0c817b309c4822":{"kind":"REWORK","_number":1,"created":"2026-03-20 20:58:42.000000000","uploader":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"ref":"refs/changes/05/981605/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/openstacksdk","ref":"refs/changes/05/981605/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/openstacksdk refs/changes/05/981605/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/openstacksdk refs/changes/05/981605/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/openstacksdk refs/changes/05/981605/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/openstacksdk refs/changes/05/981605/1"}}},"commit":{"parents":[{"commit":"d39d58aedaa12dd43f27738e50375ad677ea7ccb","subject":"Merge \"Fix RecursionError when deepcopy is called on CloudRegion\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstacksdk/commit/d39d58aedaa12dd43f27738e50375ad677ea7ccb"}]}],"author":{"name":"Boris Bobrov","email":"b.bobrov@sap.com","date":"2026-03-20 13:03:14.000000000","tz":60},"committer":{"name":"Boris Bobrov","email":"b.bobrov@sap.com","date":"2026-03-20 13:03:14.000000000","tz":60},"subject":"Fix find_domain to resolve from token on Forbidden","message":"Fix find_domain to resolve from token on Forbidden\n\nWhen a cloud administrator has restricted domain listing,\nfind_domain() raises ForbiddenException because the name-to-ID\nresolution falls back to GET /v3/domains?name\u003dX which triggers\nthe identity:list_domains policy.\n\nCatch the ForbiddenException and attempt to resolve the domain\nfrom the cached authentication token. The token contains the\nuser\u0027s domain, the project\u0027s domain, and the scoped domain\n(for domain-scoped tokens), covering the common case where a\nuser works within a domain they are associated with.\n\nThis fallback requires zero additional API calls since the\ntoken is already cached in keystoneauth1\u0027s AccessInfo.\n\nCloses-Bug: #2145017\nGenerated-By: claude-opus-4-6 (OpenCode)\nChange-Id: I5f81efad666c3af30b968f816069540273179cac\nSigned-off-by: Boris Bobrov \u003cb.bobrov@sap.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstacksdk/commit/121f6a370d46ae7afb8baedeee0c817b309c4822"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstacksdk/commit/121f6a370d46ae7afb8baedeee0c817b309c4822"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"OK","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY"},{"label":"Workflow","status":"MAY"},{"label":"Allow-Post-Review","status":"MAY"}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Verified\u003dMAX","label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Allow-Post-Review","description":"Allow Post Review","status":"NOT_APPLICABLE","is_legacy":false,"applicability_expression_result":{"fulfilled":false,"status":"FAIL"},"submittability_expression_result":{"expression":"is:true","fulfilled":true,"status":"NOT_EVALUATED","passing_atoms":[],"failing_atoms":[],"atom_explanations":{}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Code-Review\u003dMAX","label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Workflow\u003dMAX","label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
