)]}'
{"id":"openstack%2Fneutron-lib~977128","triplet_id":"openstack%2Fneutron-lib~master~I4425e53094073ed91acd1ab68444147a22db49ec","project":"openstack/neutron-lib","branch":"master","topic":"bug-2125573","attention_set":{},"removed_from_attention_set":{"16688":{"account":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"last_update":"2026-03-05 03:47:38.000000000","reason":"Change was submitted"},"11975":{"account":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"last_update":"2026-02-19 10:28:43.000000000","reason":"\u003cGERRIT_ACCOUNT_11975\u003e replied on the change","reason_account":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"}},"25468":{"account":{"_account_id":25468,"name":"Michel Nederlof","email":"michel@nederlof.info","username":"pellucid"},"last_update":"2026-03-05 03:47:38.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"I4425e53094073ed91acd1ab68444147a22db49ec","subject":"Add VIF_TYPE_VIRTUAL constant to portbindings","status":"MERGED","created":"2026-02-17 15:41:55.000000000","updated":"2026-04-01 13:34:30.000000000","submitted":"2026-03-05 03:47:38.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":4,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"977128-bug-2125573","meta_rev_id":"f0b7eee59599cb363584a69fe35ada0b9097d71c","_number":977128,"virtual_id_number":977128,"owner":{"_account_id":25468,"name":"Michel Nederlof","email":"michel@nederlof.info","username":"pellucid"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},{"value":0,"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},{"value":0,"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"value":0,"_account_id":25468,"name":"Michel Nederlof","email":"michel@nederlof.info","username":"pellucid"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-03-05 03:47:38.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":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"all":[{"value":0,"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},{"value":2,"date":"2026-02-19 10:28:43.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},{"value":2,"date":"2026-03-05 01:44:28.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"value":1,"date":"2026-02-18 10:00:01.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":25468,"name":"Michel Nederlof","email":"michel@nederlof.info","username":"pellucid"},{"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":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"all":[{"value":0,"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},{"value":0,"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},{"value":1,"date":"2026-03-05 01:44:28.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"value":0,"_account_id":25468,"name":"Michel Nederlof","email":"michel@nederlof.info","username":"pellucid"},{"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":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},{"value":0,"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},{"value":0,"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"value":0,"_account_id":25468,"name":"Michel Nederlof","email":"michel@nederlof.info","username":"pellucid"},{"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":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":25468,"name":"Michel Nederlof","email":"michel@nederlof.info","username":"pellucid"}],"CC":[{"_account_id":16011,"name":"James Denton","email":"james.denton@outlook.com","username":"busterswt"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-02-17 17:51:22.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-02-18 07:37:33.000000000","updated_by":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"reviewer":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"state":"REVIEWER"},{"updated":"2026-02-18 08:29:54.000000000","updated_by":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"reviewer":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"state":"REVIEWER"},{"updated":"2026-03-03 03:22:08.000000000","updated_by":{"_account_id":16011,"name":"James Denton","email":"james.denton@outlook.com","username":"busterswt"},"reviewer":{"_account_id":16011,"name":"James Denton","email":"james.denton@outlook.com","username":"busterswt"},"state":"CC"},{"updated":"2026-03-05 01:44:28.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"}],"messages":[{"id":"f4d95b7550221b9c1fbecc0083142d02a6112172","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":25468,"name":"Michel Nederlof","email":"michel@nederlof.info","username":"pellucid"},"date":"2026-02-17 15:41:55.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"d9ebf8bb0035cd511f8fc9d76a3972d317417fcd","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-02-17 17:51:22.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/d21568661e864479b0b72bb47d4bef39\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/32ffd39e2d984fb7862767add4b0a2e1 : SUCCESS in 8m 50s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/be5c8848e15c401da445185006d75121 : SUCCESS in 5m 23s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/ccd764e61fd7411ab49c56c7700ba30f : SUCCESS in 4m 43s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/17b1c7343c99437c965e3ea343286751 : SUCCESS in 3m 44s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/f071bf9fd59342248cd0172dee5b2c2e : SUCCESS in 4m 24s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/48b2798ea5b04b58ac8867923fef22dc : SUCCESS in 1h 26m 34s\n- neutron-tempest-plugin-openvswitch https://zuul.opendev.org/t/openstack/build/834cf68f560741f5959c6ebf7ee43432 : SUCCESS in 1h 33m 21s\n- neutron-tempest-plugin-ovn https://zuul.opendev.org/t/openstack/build/c4e1c58bc5a2466aaa41f1f945955d1a : SUCCESS in 2h 00m 36s\n- neutron-tempest-plugin-designate-scenario https://zuul.opendev.org/t/openstack/build/b9d25056edc74b7fb7cf14242f8f3545 : SUCCESS in 35m 06s\n- openstack-tox-py313-with-neutron https://zuul.opendev.org/t/openstack/build/245acf4a125c4028b886764d61c064d0 : SUCCESS in 27m 39s\n- openstack-tox-py313-with-sqlalchemy-master https://zuul.opendev.org/t/openstack/build/f107e649eb61441db37c65f12e89ad0c : SUCCESS in 5m 56s\n- neutron-functional https://zuul.opendev.org/t/openstack/build/5562c4e98a754b4aa9dc94c028fad092 : SUCCESS in 1h 02m 22s","accounts_in_message":[],"_revision_number":1},{"id":"4f3683549b0ed1cbf37d14a7691eaa99baa587a5","author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"date":"2026-02-18 07:37:33.000000000","message":"Patch Set 1: Code-Review-1\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"28d367531c016db62ea0d6a0bd405733b9af8fb4","author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"date":"2026-02-18 08:29:54.000000000","message":"Patch Set 1: Code-Review-1\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"8851f2cbdfbaf89970bbe2b175aef2daed42e807","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":25468,"name":"Michel Nederlof","email":"michel@nederlof.info","username":"pellucid"},"date":"2026-02-18 09:11:08.000000000","message":"Uploaded patch set 2.\n\nOutdated Votes:\n* Code-Review-1 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n* Verified+1\n","accounts_in_message":[],"_revision_number":2},{"id":"a78f8a6d22dd43c3719d5ac4e6851a985e3829f1","author":{"_account_id":25468,"name":"Michel Nederlof","email":"michel@nederlof.info","username":"pellucid"},"date":"2026-02-18 09:14:27.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"fd18e6fed04660df9c8769d5b77d8433684c5f14","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":25468,"name":"Michel Nederlof","email":"michel@nederlof.info","username":"pellucid"},"date":"2026-02-18 09:57:03.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"a93a2533cd5757a0ffef7bc6d20d4976212a6d0e","author":{"_account_id":25468,"name":"Michel Nederlof","email":"michel@nederlof.info","username":"pellucid"},"date":"2026-02-18 10:00:01.000000000","message":"Patch Set 3: Code-Review+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":3},{"id":"22cfbc02ae8b2684c6aac5d439c176d5b440666b","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-02-18 12:19:16.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/e08b25978e664ef3bd91f79448e3ebe1\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/83725363614e497aab3ab350dde11c9f : SUCCESS in 8m 48s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/3e0420dc60cb43e49316544dc8ea1e6f : SUCCESS in 4m 31s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e3135750cb0f4a23a2090d3428f3cdd5 : SUCCESS in 6m 33s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/3fcda61926924c4e8e024f68622618c9 : SUCCESS in 5m 27s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/6f4dafcc801748f5a5bdb006912acdc3 : SUCCESS in 3m 39s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/41d5fede2806426fb4297e75af92fba5 : SUCCESS in 1h 56m 41s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/ab5c13205394424fba8994dd2f0cc18d : SUCCESS in 3m 54s\n- neutron-tempest-plugin-openvswitch https://zuul.opendev.org/t/openstack/build/10ae885b187f4368908cf05a559a13f3 : SUCCESS in 1h 32m 43s\n- neutron-tempest-plugin-ovn https://zuul.opendev.org/t/openstack/build/3911567a059646169bb3b0304cbf8a46 : SUCCESS in 2h 20m 09s\n- neutron-tempest-plugin-designate-scenario https://zuul.opendev.org/t/openstack/build/7c070fe005234b6e9782ebdc377c96fe : SUCCESS in 48m 34s\n- openstack-tox-py313-with-neutron https://zuul.opendev.org/t/openstack/build/803aedfd926f4d1ba97ad0b683e47ae4 : SUCCESS in 17m 50s\n- openstack-tox-py313-with-sqlalchemy-master https://zuul.opendev.org/t/openstack/build/5096e14093e243879db40e3d2d67cfd0 : SUCCESS in 5m 20s\n- neutron-functional https://zuul.opendev.org/t/openstack/build/5038c4dfe12047bfbc937d4816f6cb60 : SUCCESS in 53m 42s","accounts_in_message":[],"_revision_number":3},{"id":"47aef782d51c78ff68a33296be0e92d1e77403e9","author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"date":"2026-02-19 10:28:43.000000000","message":"Patch Set 3: Code-Review+2","accounts_in_message":[],"_revision_number":3},{"id":"b2044f95775de150f1bf8d0722bfb461c33e1798","author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"date":"2026-03-05 01:44:28.000000000","message":"Patch Set 3: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":3},{"id":"b93d056e724a96f3cd6cb57e63c1d1cca7b3e3c7","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-05 01:44:48.000000000","message":"Patch Set 3: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":3},{"id":"c55bd9d7f142f98f513fa68353888feb73ce7b5e","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-05 03:47:38.000000000","message":"Patch Set 3: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/674c8dc11ecf4c2fb66c6d0f668ac108\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d4c23b40dc1e4d01aeae6daad10a5087 : SUCCESS in 8m 32s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/49cda9f0fe6e41109aa19e772d6a9150 : SUCCESS in 4m 37s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/4aae60b3ada0423abacdfa143c41a5bb : SUCCESS in 4m 43s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/fc3025f24da34f5a85addea9fe973391 : SUCCESS in 5m 22s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/7633428d986547439ebce6f5af71d747 : SUCCESS in 1h 51m 42s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/76d1eafe5e57441f85faf17adfe62dc8 : SUCCESS in 3m 53s\n- neutron-tempest-plugin-openvswitch https://zuul.opendev.org/t/openstack/build/0af5f45718784f9f96c0b52efe292643 : SUCCESS in 1h 21m 36s\n- neutron-tempest-plugin-ovn https://zuul.opendev.org/t/openstack/build/bf1e77ea345140f5a1c0b89aec94e323 : SUCCESS in 2h 02m 27s\n- neutron-functional https://zuul.opendev.org/t/openstack/build/27034039e7d44edea3140d3b9eb471a1 : SUCCESS in 48m 16s","accounts_in_message":[],"_revision_number":3},{"id":"36b4e19ee6f62b5ca6fca353b465b7d318db4db8","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-05 03:47:38.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":3},{"id":"eecb7d2e57781562b9a3a6e3e38062c806bb8577","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-05 03:48:32.000000000","message":"Patch Set 3:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/44f7ffea321e4e28aa589e2f47ad9d68\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/4b1a4d7ff2604b299f11ee24bbc13ec4 : SUCCESS in 44s\n- promote-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/5b26f14df21441ada07e079e6a072fcf : SUCCESS in 44s","accounts_in_message":[],"_revision_number":3},{"id":"f0b7eee59599cb363584a69fe35ada0b9097d71c","tag":"autogenerated:gerrit:revert","author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"date":"2026-04-01 13:34:30.000000000","message":"Created a revert of this change as I1947b32b0994e7bee7c2283fb3b7d02644a84501","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"8fdbf93be68012180860027547e8b08d20dfa86c","revisions":{"6fd6200ffa1b0e0c2c31fd562156eb1243871e08":{"kind":"REWORK","_number":1,"created":"2026-02-17 15:41:55.000000000","uploader":{"_account_id":25468,"name":"Michel Nederlof","email":"michel@nederlof.info","username":"pellucid"},"ref":"refs/changes/28/977128/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/neutron-lib","ref":"refs/changes/28/977128/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/28/977128/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/28/977128/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/28/977128/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/neutron-lib refs/changes/28/977128/1"}}},"commit":{"parents":[{"commit":"feebd9b011ce1d3d32e10fa6d93083b897c63e8e","subject":"Fix issues related to ``pkg_resources`` module","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/feebd9b011ce1d3d32e10fa6d93083b897c63e8e"}]}],"author":{"name":"Michel Nederlof","email":"mnederlof@cloudvps.com","date":"2026-02-17 15:41:47.000000000","tz":0},"committer":{"name":"Michel Nederlof","email":"mnederlof@cloudvps.com","date":"2026-02-17 15:41:55.000000000","tz":0},"subject":"Add VIF_TYPE_VIRTUAL constant to portbindings","message":"Add VIF_TYPE_VIRTUAL constant to portbindings\n\nUsed for binding virtual ports, e.g. ports referenced in allowed-address-pairs for other ports. This virtual port can then be used to associate a floating ip to it.\n\nWith this new type, we can actually bind the virtual ports and make it appear bound, skipping the bind process of the mech driver.\n\nNeeded-by: I94b5f0a484b11999d5bd071ff4849ad9cd658e79\nRelated-bug: #2125573\nChange-Id: I4425e53094073ed91acd1ab68444147a22db49ec\nSigned-off-by: michel.nederlof@nl.team.blue\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/6fd6200ffa1b0e0c2c31fd562156eb1243871e08"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/6fd6200ffa1b0e0c2c31fd562156eb1243871e08"}]},"branch":"refs/heads/master"},"13793c4ec50ee1675527d8a395b78c21587bc232":{"kind":"REWORK","_number":2,"created":"2026-02-18 09:11:08.000000000","uploader":{"_account_id":25468,"name":"Michel Nederlof","email":"michel@nederlof.info","username":"pellucid"},"ref":"refs/changes/28/977128/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/neutron-lib","ref":"refs/changes/28/977128/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/28/977128/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/28/977128/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/28/977128/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/neutron-lib refs/changes/28/977128/2"}}},"commit":{"parents":[{"commit":"feebd9b011ce1d3d32e10fa6d93083b897c63e8e","subject":"Fix issues related to ``pkg_resources`` module","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/feebd9b011ce1d3d32e10fa6d93083b897c63e8e"}]}],"author":{"name":"Michel Nederlof","email":"mnederlof@cloudvps.com","date":"2026-02-17 15:41:47.000000000","tz":0},"committer":{"name":"Michel Nederlof","email":"mnederlof@cloudvps.com","date":"2026-02-18 09:09:20.000000000","tz":0},"subject":"Add VIF_TYPE_VIRTUAL constant to portbindings","message":"Add VIF_TYPE_VIRTUAL constant to portbindings\n\nUsed for binding virtual ports, e.g. ports referenced in\nallowed-address-pairs for other ports. This virtual port can then be\nused to associate a floating ip to it.\n\nWith this new type, we can actually bind the virtual ports and make\nit appear bound, skipping the bind process of the mech driver.\n\nNeeded-by: I94b5f0a484b11999d5bd071ff4849ad9cd658e79\nRelated-bug: #2125573\nChange-Id: I4425e53094073ed91acd1ab68444147a22db49ec\nSigned-off-by: michel.nederlof@nl.team.blue\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/13793c4ec50ee1675527d8a395b78c21587bc232"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/13793c4ec50ee1675527d8a395b78c21587bc232"}]},"branch":"refs/heads/master"},"8fdbf93be68012180860027547e8b08d20dfa86c":{"kind":"REWORK","_number":3,"created":"2026-02-18 09:57:03.000000000","uploader":{"_account_id":25468,"name":"Michel Nederlof","email":"michel@nederlof.info","username":"pellucid"},"ref":"refs/changes/28/977128/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/neutron-lib","ref":"refs/changes/28/977128/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/28/977128/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/28/977128/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/28/977128/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/neutron-lib refs/changes/28/977128/3"}}},"commit":{"parents":[{"commit":"feebd9b011ce1d3d32e10fa6d93083b897c63e8e","subject":"Fix issues related to ``pkg_resources`` module","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/feebd9b011ce1d3d32e10fa6d93083b897c63e8e"}]}],"author":{"name":"Michel Nederlof","email":"mnederlof@cloudvps.com","date":"2026-02-17 15:41:47.000000000","tz":0},"committer":{"name":"Michel Nederlof","email":"mnederlof@cloudvps.com","date":"2026-02-18 09:56:15.000000000","tz":0},"subject":"Add VIF_TYPE_VIRTUAL constant to portbindings","message":"Add VIF_TYPE_VIRTUAL constant to portbindings\n\nUsed for binding virtual ports, e.g. ports referenced in\nallowed-address-pairs for other ports. This virtual port can then be\nused to associate a floating ip to it.\n\nWith this new type, we can actually bind the virtual ports and make\nit appear bound, skipping the bind process of the mech driver.\n\nNeeded-by: I94b5f0a484b11999d5bd071ff4849ad9cd658e79\nRelated-bug: #2125573\nChange-Id: I4425e53094073ed91acd1ab68444147a22db49ec\nSigned-off-by: michel.nederlof@nl.team.blue\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/8fdbf93be68012180860027547e8b08d20dfa86c"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/8fdbf93be68012180860027547e8b08d20dfa86c"}]},"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":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"}},{"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":{}}}]}
