)]}'
{"id":"openstack%2Fcodegenerator~950250","triplet_id":"openstack%2Fcodegenerator~master~Ib2cf6e394486ebd0a475ed3d9bba97feefcd5205","project":"openstack/codegenerator","branch":"master","hashtags":[],"change_id":"Ib2cf6e394486ebd0a475ed3d9bba97feefcd5205","subject":"Fix role_assignments command","status":"MERGED","created":"2025-05-17 11:24:34.000000000","updated":"2025-05-17 13:35:48.000000000","submitted":"2025-05-17 13:35:03.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":"950250","meta_rev_id":"04843b3989cd5a8cc544d3cc4ac194820d50567e","_number":950250,"virtual_id_number":950250,"owner":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2025-05-17 13:35:03.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":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"all":[{"value":2,"date":"2025-05-17 12:40:37.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},{"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":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"all":[{"value":1,"date":"2025-05-17 12:40:37.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},{"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":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2025-05-17 12:38:50.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":"485fc82be45ce54316752a14c3f59e8a571bedd8","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"date":"2025-05-17 11:24:34.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"df74e88529fd5d08d15b2bc74837b69ddb5c43ba","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"date":"2025-05-17 11:40:42.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"8b6cc28c98653470b94f549cea13eba1fa6f43b2","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-05-17 12:38:50.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/c1df14e2c0f04e8283e52ce7e362a4e0\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/3d3be9516e514b9ba01dd7cb3e36aab7 : SUCCESS in 2m 32s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/8ad29e3bb5d841938259c7d549af219b : SUCCESS in 2m 42s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/32025d1e021e4376b27204439f6d4f16 : SUCCESS in 2m 11s\n- codegenerator-openapi-baremetal-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/d6a261c859e340359008be775ba7a804 : SUCCESS in 6m 42s\n- codegenerator-openapi-block-storage-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/77a0d52bd84f486bbb89711ec873a269 : SUCCESS in 8m 06s\n- codegenerator-openapi-compute-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/9a8960be5219468883f2140dcc78e141 : SUCCESS in 7m 24s\n- codegenerator-openapi-container-infrastructure-management-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/808926a3ff6b4a50a2248b1eb79aa59d : SUCCESS in 6m 23s\n- codegenerator-openapi-dns-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/b7ab247a64f24fbc9a60c78650d3a07e : SUCCESS in 6m 01s\n- codegenerator-openapi-identity-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/c6d55c0b5d0f495bb89c85509a68b145 : SUCCESS in 5m 38s\n- codegenerator-openapi-image-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/c244f24511434d9a8a6c1afd7912eace : SUCCESS in 5m 29s\n- codegenerator-openapi-key-manager-tips https://zuul.opendev.org/t/openstack/build/2bc92c79213b4e63b6aa4e08708812d4 : SUCCESS in 3m 22s\n- codegenerator-openapi-load-balancing-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/d4947443266d4785b9eb102ef57aca4f : SUCCESS in 5m 28s\n- codegenerator-openapi-network-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/2278f06a06ca46a9b37454d7d2f1d67d : SUCCESS in 6m 53s\n- codegenerator-openapi-object-store-static https://zuul.opendev.org/t/openstack/build/fbef63aced9c4d8d83de3a94898f8846 : SUCCESS in 1m 17s\n- codegenerator-openapi-placement-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/ecb26aae6e9544a580ff985e4f58ee2c : SUCCESS in 4m 23s\n- codegenerator-openapi-shared-file-system-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/ef7690ae85a7455390e40791690823bf : SUCCESS in 4m 21s\n- codegenerator-tox-publish-openapi-specs https://zuul.opendev.org/t/openstack/build/66579ed2d216411ca24e61e4f6318a83 : SUCCESS in 2m 35s\n- codegenerator-rust-all https://zuul.opendev.org/t/openstack/build/c78bfa4774934879ada32500107cecfa : SUCCESS in 43m 39s","accounts_in_message":[],"_revision_number":2},{"id":"6fb7a08afff11ff7637612d51382d4c4db6fa8d4","author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"date":"2025-05-17 12:40:37.000000000","message":"Patch Set 2: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":2},{"id":"32435a1a19ea9d5d320e78c4db72a905832983be","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-05-17 12:41:01.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":2},{"id":"79bd7afd6c78108d062209e3566fe9aa06171423","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-05-17 13:35:03.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/ecb3592fdac2404dbde304bfb7ec484e\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/016ec0dae38349b8b80bf4f3e8a10c06 : SUCCESS in 2m 50s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/7ed37d27e9e74d0ea095a9d98c93dd70 : SUCCESS in 2m 54s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/25cc7ce2a6144edebd18d0fd40b65d3e : SUCCESS in 2m 30s\n- codegenerator-openapi-baremetal-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/b88a3629da99473db2b7741fb76541f1 : SUCCESS in 4m 23s\n- codegenerator-openapi-block-storage-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/3be821f458b94b3cb825e3ea9dbcf483 : SUCCESS in 3m 07s\n- codegenerator-openapi-compute-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/1073b2e788964b1a84faa71537569073 : SUCCESS in 6m 24s\n- codegenerator-openapi-container-infrastructure-management-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/06ef627d76954a03aa12deb19694d9e8 : SUCCESS in 3m 07s\n- codegenerator-openapi-dns-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/424d2c120dcd4344ab22669037e3cd6b : SUCCESS in 2m 21s\n- codegenerator-openapi-identity-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/026ad4663f3d495f9867999e62fbb275 : SUCCESS in 4m 49s\n- codegenerator-openapi-image-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/97c7c685bbf24f8c99b69605b551309e : SUCCESS in 6m 51s\n- codegenerator-openapi-key-manager-tips https://zuul.opendev.org/t/openstack/build/1b1678c03d5d41cb9176506fb6151c2f : SUCCESS in 3m 26s\n- codegenerator-openapi-load-balancing-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/f31df005b7564e01ad996d0c399aff69 : SUCCESS in 2m 34s\n- codegenerator-openapi-network-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/5cedb9a5e2eb4d11b14dbe795bccc6de : SUCCESS in 3m 54s\n- codegenerator-openapi-object-store-static https://zuul.opendev.org/t/openstack/build/68ee0cbd6d5e4d31a09198ee583f334c : SUCCESS in 1m 28s\n- codegenerator-openapi-placement-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/71c759a4d32145bdb1374bb0c14ac3bb : SUCCESS in 6m 09s\n- codegenerator-openapi-shared-file-system-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/86ae84594e034ebea16f1c42ca1d3489 : SUCCESS in 2m 47s\n- codegenerator-tox-publish-openapi-specs https://zuul.opendev.org/t/openstack/build/9c51887c774142a1bd77aada9d2075a3 : SUCCESS in 3m 46s\n- codegenerator-rust-all https://zuul.opendev.org/t/openstack/build/c5808d4adcb74f7eb1f78cdd2e192973 : SUCCESS in 42m 40s","accounts_in_message":[],"_revision_number":2},{"id":"e9f21d43df72ffeada2a3d9908e6965561317bfe","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-05-17 13:35:03.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":2},{"id":"04843b3989cd5a8cc544d3cc4ac194820d50567e","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-05-17 13:35:48.000000000","message":"Patch Set 2:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/b5926beb226e4a6181626d41795250f9\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/fa368f2e736943b889a66ebcee518b83 : SUCCESS in 32s\n- codegenerator-propose-rust-openstack-change https://zuul.opendev.org/t/openstack/build/486e0912f05e483b87234fc1b5301d57 : SUCCESS in 37s","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"d3f1f124e50301366bc67fe6c86f4765f7e29e0e","revisions":{"ee60e4f44ecf19c89391c1d241a79bd754ee0d44":{"kind":"REWORK","_number":1,"created":"2025-05-17 11:24:34.000000000","uploader":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"ref":"refs/changes/50/950250/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/codegenerator","ref":"refs/changes/50/950250/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/50/950250/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/50/950250/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/50/950250/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/codegenerator refs/changes/50/950250/1"}}},"commit":{"parents":[{"commit":"d201f9a6d959467a5551dca543da24ecd200e072","subject":"Hopefully address nested structures renaming race","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/d201f9a6d959467a5551dca543da24ecd200e072"}]}],"author":{"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","date":"2025-05-17 10:25:57.000000000","tz":120},"committer":{"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","date":"2025-05-17 10:30:04.000000000","tz":120},"subject":"Fix role_assignments command","message":"Fix role_assignments command\n\nIn the cli generation it was assumed that the first element in the\nresponse schema is the object itself. That is used to check whether the\nresponse is list or not. Now the role_assignment schema return `links`\nobject first breaking that assumption. Extend the check to first look at\nthe `response_key` that we identified previously.\n\nChange-Id: Ib2cf6e394486ebd0a475ed3d9bba97feefcd5205\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/ee60e4f44ecf19c89391c1d241a79bd754ee0d44"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/ee60e4f44ecf19c89391c1d241a79bd754ee0d44"}]},"branch":"refs/heads/master"},"d3f1f124e50301366bc67fe6c86f4765f7e29e0e":{"kind":"REWORK","_number":2,"created":"2025-05-17 11:40:42.000000000","uploader":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"ref":"refs/changes/50/950250/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/codegenerator","ref":"refs/changes/50/950250/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/50/950250/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/50/950250/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/50/950250/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/codegenerator refs/changes/50/950250/2"}}},"commit":{"parents":[{"commit":"d201f9a6d959467a5551dca543da24ecd200e072","subject":"Hopefully address nested structures renaming race","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/d201f9a6d959467a5551dca543da24ecd200e072"}]}],"author":{"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","date":"2025-05-17 10:25:57.000000000","tz":120},"committer":{"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","date":"2025-05-17 11:40:28.000000000","tz":120},"subject":"Fix role_assignments command","message":"Fix role_assignments command\n\nIn the cli generation it was assumed that the first element in the\nresponse schema is the object itself. That is used to check whether the\nresponse is list or not. Now the role_assignment schema return `links`\nobject first breaking that assumption. Extend the check to first look at\nthe `response_key` that we identified previously.\n\nChange-Id: Ib2cf6e394486ebd0a475ed3d9bba97feefcd5205\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/d3f1f124e50301366bc67fe6c86f4765f7e29e0e"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/d3f1f124e50301366bc67fe6c86f4765f7e29e0e"}]},"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":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"}}]}],"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":{}}},{"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":{}}},{"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":{}}}]}
