)]}'
{"id":"openstack%2Fneutron-lib~942064","triplet_id":"openstack%2Fneutron-lib~master~I592f7ff0673c15276e9da0054fd38f7ad96f795a","project":"openstack/neutron-lib","branch":"master","topic":"bug/2098109","attention_set":{},"removed_from_attention_set":{"16688":{"account":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"last_update":"2025-02-21 23:11:01.000000000","reason":"removed on reply"}},"hashtags":[],"change_id":"I592f7ff0673c15276e9da0054fd38f7ad96f795a","subject":"Fix ``external-gateway-multihoming`` API extension definition","status":"MERGED","created":"2025-02-18 08:10:52.000000000","updated":"2025-02-22 03:46:31.000000000","submitted":"2025-02-22 03:45:21.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":"942064-bug/2098109","meta_rev_id":"74f9a08171caeb65af25c64c443526e545b2687c","_number":942064,"virtual_id_number":942064,"owner":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},{"value":0,"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2025-02-22 03:45:21.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":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"all":[{"value":2,"date":"2025-02-19 12:28:10.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},{"value":2,"date":"2025-02-18 19:55:25.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"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":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"all":[{"value":1,"date":"2025-02-19 12:28:10.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},{"value":0,"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"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},"Review-Priority":{"all":[{"value":0,"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},{"value":0,"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Branch Freeze"," 0":"No Priority","+1":"Important Change","+2":"Gate Blocker Fix / Urgent Change"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2025-02-18 10:52:46.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":"2025-02-18 19:55:25.000000000","updated_by":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"reviewer":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"state":"REVIEWER"},{"updated":"2025-02-19 12:28:10.000000000","updated_by":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"reviewer":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"state":"REVIEWER"}],"messages":[{"id":"1a4a57d105dcd8728e48926a8ed1db3e9f1ff522","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"date":"2025-02-18 08:10:52.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"c301ccb30343d3ab816486bcebb76374aed7856c","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-02-18 10:52:46.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/e8e79f03f68a4426a16be2a8e9c4f0d0\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d238eebe124745b6b984022986925951 : SUCCESS in 3m 59s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/1d48bf29f4a54c01ab8c48a1e65bb90d : SUCCESS in 4m 13s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/10c415a36a084c1c8483539166a07438 : SUCCESS in 3m 05s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/3b1dcfc4c08345b4b17d22f6f37c7602 : SUCCESS in 3m 17s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/913b8a9fc6ac4a5f8ba60a1eca1853b7 : SUCCESS in 3m 49s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/8ef7c0c852614b30ac44ad13a82bafc5 : SUCCESS in 1h 42m 01s\n- neutron-tempest-plugin-openvswitch https://zuul.opendev.org/t/openstack/build/2874fa715c344b13a138709db0ff88cd : SUCCESS in 1h 49m 20s\n- neutron-tempest-plugin-openvswitch-iptables_hybrid https://zuul.opendev.org/t/openstack/build/28c678ec178648209944698583bd5c10 : SUCCESS in 2h 39m 57s\n- neutron-tempest-plugin-ovn https://zuul.opendev.org/t/openstack/build/48cc3625a86f44438a440d7fa883fcd7 : SUCCESS in 1h 58m 48s\n- neutron-tempest-plugin-designate-scenario https://zuul.opendev.org/t/openstack/build/555c7ce3509e4748b8a5463b083f9680 : FAILURE in 17m 20s (non-voting)\n- neutron-tempest-plugin-openvswitch-ubuntu-jammy https://zuul.opendev.org/t/openstack/build/a13091043ece4d28a73f78a1868442b7 : SUCCESS in 1h 45m 43s\n- neutron-tempest-plugin-ovn-ubuntu-jammy https://zuul.opendev.org/t/openstack/build/ac034543769d48a4bd146648b7560459 : SUCCESS in 2h 05m 17s\n- openstack-tox-py312-with-neutron https://zuul.opendev.org/t/openstack/build/6d7e9788b6d6447e860deee0bd942112 : SUCCESS in 20m 34s\n- openstack-tox-py312-with-sqlalchemy-master https://zuul.opendev.org/t/openstack/build/e4bd6851fbcf4423a561c897f4d1b038 : SUCCESS in 6m 54s\n- neutron-functional https://zuul.opendev.org/t/openstack/build/b032467a97f544af8b32d5f6151dca3c : SUCCESS in 1h 09m 15s","accounts_in_message":[],"_revision_number":1},{"id":"4c563594897b74ea1b3e7326cdc018095a75fe12","author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"date":"2025-02-18 19:55:25.000000000","message":"Patch Set 1: Code-Review+2","accounts_in_message":[],"_revision_number":1},{"id":"0cc471ec34c5e39431e2a57d1de7fee773f2406b","author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"date":"2025-02-19 12:28:10.000000000","message":"Patch Set 1: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":1},{"id":"db7f2d9f8afb8920efa1421ad925ddc41f315053","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-02-21 20:20:51.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"2bc94c3df11a994fd2f702b419c51ae5b678f838","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-02-21 22:07:43.000000000","message":"Patch Set 1: Verified-2\n\nThis change depends on a change that failed to merge.\n\nChange https://review.opendev.org/941631 is needed.","accounts_in_message":[],"_revision_number":1},{"id":"a408ea41ef3711fff47fc509ae257e396e48f0a5","author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"date":"2025-02-21 23:11:01.000000000","message":"Patch Set 1:\n\nrecheck functional","accounts_in_message":[],"_revision_number":1},{"id":"eba2985cd5b1201b7379da394687c431e3a3e7b9","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-02-22 01:20:07.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/ad0cd10a07544ebe8fc2a5973d5d0bfa\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/65847b7958b54884874ce8466c5b85b4 : SUCCESS in 7m 10s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/42d4e78fb37743a58568e04c855dd94e : SUCCESS in 4m 39s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/8669569bb5664011877800dc0eba40f2 : SUCCESS in 5m 15s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/06983f5a1d274981868176cf3c1e86f8 : SUCCESS in 3m 05s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/caeea69b99674bf1bb53f9d25c312896 : SUCCESS in 4m 47s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/9e943a5432ca407db9bb33d30ef8a65b : SUCCESS in 2h 01m 46s\n- neutron-tempest-plugin-openvswitch https://zuul.opendev.org/t/openstack/build/04481767d16d4a97b8eb290971e04b41 : SUCCESS in 1h 48m 21s\n- neutron-tempest-plugin-ovn https://zuul.opendev.org/t/openstack/build/2f5654b7a7314d2d8c519a435118cc66 : SUCCESS in 1h 44m 26s\n- neutron-tempest-plugin-designate-scenario https://zuul.opendev.org/t/openstack/build/38b768fc6d73485bb44bf07623256824 : SUCCESS in 48m 50s (non-voting)\n- neutron-tempest-plugin-openvswitch-ubuntu-jammy https://zuul.opendev.org/t/openstack/build/f812cf6e136b4b06b755418a4c07de22 : SUCCESS in 1h 31m 16s\n- neutron-tempest-plugin-ovn-ubuntu-jammy https://zuul.opendev.org/t/openstack/build/9dde94ee649d4359b2380a675515117b : SUCCESS in 1h 30m 51s\n- openstack-tox-py312-with-neutron https://zuul.opendev.org/t/openstack/build/250bd687d8514992b084c89d86620ad9 : SUCCESS in 18m 27s\n- openstack-tox-py312-with-sqlalchemy-master https://zuul.opendev.org/t/openstack/build/e141d7f4711a4b4ab4130e8ed5d9d9f7 : SUCCESS in 7m 29s\n- neutron-functional https://zuul.opendev.org/t/openstack/build/2acee7cdb26b4f97b6763c733c57c749 : SUCCESS in 53m 41s","accounts_in_message":[],"_revision_number":1},{"id":"d0b78967923f473b01cc7fc488f079445d22351e","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-02-22 01:32:14.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"42061e80726c2e538bd8fee6602d2fc6b71499c3","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-02-22 03:45:21.000000000","message":"Patch Set 1: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/57d8299458054da1803985a02871889b\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/9900dde5dbe5458cbc18acca03e044b8 : SUCCESS in 6m 20s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/ae4782ebac5b48e396d66b0a3414798c : SUCCESS in 4m 31s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/27ba1cff80bc4009b18f5735a6254373 : SUCCESS in 3m 49s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/591dd2890fa543f8b3045ed7081d7b3e : SUCCESS in 4m 55s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/0eb64f22c64745b98eb65ac9d7cbce5e : SUCCESS in 1h 42m 00s\n- neutron-tempest-plugin-openvswitch https://zuul.opendev.org/t/openstack/build/28d62f2c96444a98bbe8c2295854e663 : SUCCESS in 1h 33m 29s\n- neutron-tempest-plugin-ovn https://zuul.opendev.org/t/openstack/build/899e7018cbf9412abfb97a904a2e42fa : SUCCESS in 2h 11m 49s\n- neutron-functional https://zuul.opendev.org/t/openstack/build/cce659a1fb6943c78166c5edd106399f : SUCCESS in 1h 26m 26s","accounts_in_message":[],"_revision_number":1},{"id":"17b221755e7c4504c574d37560668df53fa42c2a","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-02-22 03:45:21.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":1},{"id":"74f9a08171caeb65af25c64c443526e545b2687c","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-02-22 03:46:31.000000000","message":"Patch Set 1:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/a5891fc701b24bfeb08b7b53c2230e85\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/6d6e8c26ef0447d0861b6628d0ccad13 : SUCCESS in 50s","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"bf21a6dcd48bdd15c28086f256319ac035b7fef0","revisions":{"bf21a6dcd48bdd15c28086f256319ac035b7fef0":{"kind":"REWORK","_number":1,"created":"2025-02-18 08:10:52.000000000","uploader":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"ref":"refs/changes/64/942064/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/neutron-lib","ref":"refs/changes/64/942064/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/64/942064/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/64/942064/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/64/942064/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/neutron-lib refs/changes/64/942064/1"}}},"commit":{"parents":[{"commit":"5aaa572a021f4bbf82a5450908e92cd60c26287e","subject":"Fix the router \"external_gateway_info\" validation","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/5aaa572a021f4bbf82a5450908e92cd60c26287e"}]}],"author":{"name":"Rodolfo Alonso Hernandez","email":"ralonsoh@redhat.com","date":"2025-02-18 06:43:19.000000000","tz":0},"committer":{"name":"Rodolfo Alonso Hernandez","email":"ralonsoh@redhat.com","date":"2025-02-18 08:10:24.000000000","tz":0},"subject":"Fix ``external-gateway-multihoming`` API extension definition","message":"Fix ``external-gateway-multihoming`` API extension definition\n\nThe new field ``external-gateways`` added in the API extension\n``external-gateway-multihoming`` didn\u0027t have the ``enforce_policy`` flag\ndefined and the validate parameters didn\u0027t provide the needed\ninformation to the Neutron policy to build a correct rule match.\nNow this field copies the ``ext-gw-mode`` extension validator used in\nthe ``external_gateway_info`` field.\n\nThe validator type ``list_of_dict_or_nodata`` is currently not\nrecognized by the Neutron policy as an iterable validator [1]; this\ncode must be changed in Neutron in order to accept this new defined\nvalidator that is not a dictionary but a list of dictionaries.\n\n[1]https://github.com/openstack/neutron/blob/86f94de99aa08b1b4aadca8e90c6e79487171b8e/neutron/policy.py#L142\n\nCloses-Bug: #2098109\nChange-Id: I592f7ff0673c15276e9da0054fd38f7ad96f795a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/bf21a6dcd48bdd15c28086f256319ac035b7fef0"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/bf21a6dcd48bdd15c28086f256319ac035b7fef0"}]},"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":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"}},{"label":"Review-Priority","status":"MAY"}]}],"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":"Review-Priority","description":"Review priority","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"-label:Review-Priority\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":[],"failing_atoms":["label:Review-Priority\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":{}}}]}
