)]}'
{"id":"openstack%2Fnetworking-generic-switch~991359","triplet_id":"openstack%2Fnetworking-generic-switch~master~Idcee78e9286530a0a39c8ed969a290e97805ec09","project":"openstack/networking-generic-switch","branch":"master","topic":"netconf","hashtags":[],"change_id":"Idcee78e9286530a0a39c8ed969a290e97805ec09","subject":"Add L2VNI plug/unplug to NETCONF OpenConfig driver","status":"ABANDONED","created":"2026-06-03 14:00:44.000000000","updated":"2026-06-08 11:54:08.000000000","total_comment_count":0,"unresolved_comment_count":0,"work_in_progress":true,"has_review_started":true,"meta_rev_id":"c823cf1b2352292c520535eedc176d88c7c0f833","_number":991359,"virtual_id_number":991359,"owner":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:check","value":1,"date":"2026-06-03 18:06:59.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},"Backport-Candidate":{"all":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Do Not Backport"," 0":"Backport Review Needed","+1":"Should Backport"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"reviewer_updates":[{"updated":"2026-06-03 16:06:57.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":"9e8cfdc2dd0969df443c9f5de8adcf70ac416f40","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"date":"2026-06-03 14:00:44.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"e6f48f3c7ca8f4518adb5d78a2ff7a435fd8e244","tag":"autogenerated:gerrit:setWorkInProgress","author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"date":"2026-06-03 14:01:14.000000000","message":"Set Work In Progress","accounts_in_message":[],"_revision_number":1},{"id":"462b8384b387e69c812c1e38d0a2a9be2a3ffaac","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-03 16:06:57.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/2fc5da7985ed4e219c894084a52ec9bf\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/f160feb0a15f44f3a60c282f47138809 : SUCCESS in 7m 02s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/0c7e8b4605a741bf822a61bf40e1bee4 : SUCCESS in 6m 40s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/e7fec783cc7449e1aa50f53aa6a1de0c : SUCCESS in 6m 16s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/871e34657ff64a918e863c3b91ba9fad : SUCCESS in 9m 50s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/4e7c20a59c8947a0be59990954f1656a : SUCCESS in 9m 14s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/2574af35f61e405195d0f6e0fb0626e5 : SUCCESS in 5m 24s\n- networking-generic-switch-tempest-dlm https://zuul.opendev.org/t/openstack/build/d691e8c33d0a4bbfbf3412eaed4878e9 : SUCCESS in 26m 35s\n- ironic-tempest-ipa-wholedisk-direct-multinode https://zuul.opendev.org/t/openstack/build/0bfd1475bbc94f41a1456d79feb9bcd0 : SUCCESS in 1h 43m 35s\n- networking-baremetal-ovn-vxlan https://zuul.opendev.org/t/openstack/build/69eef653593c4500a55591bf25d3155d : SUCCESS in 29m 41s\n- networking-generic-switch-tox-codespell https://zuul.opendev.org/t/openstack/build/6df6513401974c9f89ff5bad75b6e7c4 : SUCCESS in 4m 00s","accounts_in_message":[],"_revision_number":1},{"id":"e0855aa36154a0c5bf04b1c13f5e57e2ee4f8426","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"date":"2026-06-03 16:07:41.000000000","message":"Uploaded patch set 2.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":2},{"id":"6dfcc23641bdb663819cd5c3c146df07dffd6298","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-03 18:06:59.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/f467359b2c784fa5b7fc47eabf82b38d\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/6e15dd96d1304030a83ff317dbb5c4ad : SUCCESS in 5m 57s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/91b3978b17364733a826af1f1ec55d0d : SUCCESS in 5m 23s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/74054582a22f4349aba1bd800a6afbbe : SUCCESS in 7m 19s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/93df82818c464d439543a422d636ac24 : SUCCESS in 9m 11s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/5d4240cf14604857ab3173762cdf2813 : SUCCESS in 9m 27s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/51f5d6231c854b90a03cf7d2a7edab2d : SUCCESS in 5m 06s\n- networking-generic-switch-tempest-dlm https://zuul.opendev.org/t/openstack/build/d24e4e8a7f3e4fb3b1035eb6ccb1f551 : SUCCESS in 14m 14s\n- ironic-tempest-ipa-wholedisk-direct-multinode https://zuul.opendev.org/t/openstack/build/e815899984fa49eb8da50a3fc89bdc37 : SUCCESS in 1h 20m 33s\n- networking-baremetal-ovn-vxlan https://zuul.opendev.org/t/openstack/build/841065c5944441d2a6a99f84423790e4 : SUCCESS in 23m 45s\n- networking-generic-switch-tox-codespell https://zuul.opendev.org/t/openstack/build/358c26e5d8ec447ab084730a86298edd : SUCCESS in 6m 56s","accounts_in_message":[],"_revision_number":2},{"id":"c823cf1b2352292c520535eedc176d88c7c0f833","tag":"autogenerated:gerrit:abandon","author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"date":"2026-06-08 11:54:08.000000000","message":"Abandoned\n\nIt turns out while the OpenConfig YANG defines this, no actual vendor has implemented this parts of the OpenConfig YANG model. :(","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"ad49426d332dca18e964a0353f08fc255f08af3f","revisions":{"bc26e99a59a378266785d010cdd4fc99a7d8d868":{"kind":"REWORK","_number":1,"created":"2026-06-03 14:00:44.000000000","uploader":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"ref":"refs/changes/59/991359/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/networking-generic-switch","ref":"refs/changes/59/991359/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/networking-generic-switch refs/changes/59/991359/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/networking-generic-switch refs/changes/59/991359/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/networking-generic-switch refs/changes/59/991359/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/networking-generic-switch refs/changes/59/991359/1"}}},"commit":{"parents":[{"commit":"59a03667f86dfd35fca05a33d27b62732708146a","subject":"Add EVPN model classes for OpenConfig NETCONF","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/networking-generic-switch/commit/59a03667f86dfd35fca05a33d27b62732708146a"}]}],"author":{"name":"Harald Jensås","email":"hjensas@redhat.com","date":"2026-06-03 09:11:17.000000000","tz":120},"committer":{"name":"Harald Jensås","email":"hjensas@redhat.com","date":"2026-06-03 13:55:34.000000000","tz":120},"subject":"Add L2VNI plug/unplug to NETCONF OpenConfig driver","message":"Add L2VNI plug/unplug to NETCONF OpenConfig driver\n\nAdd PLUG_SWITCH_TO_NETWORK and UNPLUG_SWITCH_FROM_NETWORK\ncallable class variables to NetconfSwitch base class and\nwire up the dispatch methods to delegate to them.\n\nImplement _plug_switch_to_network and\n_unplug_switch_from_network on NetconfOpenConfigSwitch,\nbuilding two complementary config trees:\n\n1. EVI-level EVPN control plane: EVPN instance with VXLAN\n   encapsulation, VLAN_BASED service type, configurable\n   replication mode, route targets, and VNI assignment.\n\n2. VTEP-level VLAN-to-VNI data-plane mapping via\n   connection-points/endpoint/vxlan/local-endpoint-vnis,\n   using bridge-domain to bind segmentation_id (VLAN) to\n   VNI -- matching what every netmiko driver does\n   explicitly.\n\nThe VTEP-level config is gated on ngs_vxlan_connection_point\nbeing set, referencing a pre-existing VTEP endpoint on the\nswitch (analogous to ngs_nve_interface for netmiko NX-OS).\n\nNew config options for the OpenConfig driver: ngs_evpn_evi,\nngs_vxlan_connection_point, ngs_vxlan_endpoint,\nngs_vxlan_source_interface.\n\nRegister ngs_evpn_route_target and ngs_bum_replication_mode\nin NGS_INTERNAL_OPTS (already used by netmiko drivers but not\npreviously registered).\n\nAssisted-By: Claude (Opus 4.6)\nChange-Id: Idcee78e9286530a0a39c8ed969a290e97805ec09\nSigned-off-by: Harald Jensås \u003chjensas@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/networking-generic-switch/commit/bc26e99a59a378266785d010cdd4fc99a7d8d868"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/networking-generic-switch/commit/bc26e99a59a378266785d010cdd4fc99a7d8d868"}]},"branch":"refs/heads/master"},"ad49426d332dca18e964a0353f08fc255f08af3f":{"kind":"REWORK","_number":2,"created":"2026-06-03 16:07:41.000000000","uploader":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"ref":"refs/changes/59/991359/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/networking-generic-switch","ref":"refs/changes/59/991359/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/networking-generic-switch refs/changes/59/991359/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/networking-generic-switch refs/changes/59/991359/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/networking-generic-switch refs/changes/59/991359/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/networking-generic-switch refs/changes/59/991359/2"}}},"commit":{"parents":[{"commit":"68f03d2081c1546cf8869510635899fb437bda2a","subject":"Add EVPN model classes for OpenConfig NETCONF","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/networking-generic-switch/commit/68f03d2081c1546cf8869510635899fb437bda2a"}]}],"author":{"name":"Harald Jensås","email":"hjensas@redhat.com","date":"2026-06-03 09:11:17.000000000","tz":120},"committer":{"name":"Harald Jensås","email":"hjensas@redhat.com","date":"2026-06-03 16:03:08.000000000","tz":120},"subject":"Add L2VNI plug/unplug to NETCONF OpenConfig driver","message":"Add L2VNI plug/unplug to NETCONF OpenConfig driver\n\nAdd PLUG_SWITCH_TO_NETWORK and UNPLUG_SWITCH_FROM_NETWORK\ncallable class variables to NetconfSwitch base class and\nwire up the dispatch methods to delegate to them.\n\nImplement _plug_switch_to_network and\n_unplug_switch_from_network on NetconfOpenConfigSwitch,\nbuilding two complementary config trees:\n\n1. EVI-level EVPN control plane: EVPN instance with VXLAN\n   encapsulation, VLAN_BASED service type, configurable\n   replication mode, route targets, and VNI assignment.\n\n2. VTEP-level VLAN-to-VNI data-plane mapping via\n   connection-points/endpoint/vxlan/local-endpoint-vnis,\n   using bridge-domain to bind segmentation_id (VLAN) to\n   VNI -- matching what every netmiko driver does\n   explicitly.\n\nThe VTEP-level config is gated on ngs_vxlan_connection_point\nbeing set, referencing a pre-existing VTEP endpoint on the\nswitch (analogous to ngs_nve_interface for netmiko NX-OS).\n\nNew config options for the OpenConfig driver: ngs_evpn_evi,\nngs_vxlan_connection_point, ngs_vxlan_endpoint,\nngs_vxlan_source_interface.\n\nRegister ngs_evpn_route_target and ngs_bum_replication_mode\nin NGS_INTERNAL_OPTS (already used by netmiko drivers but not\npreviously registered).\n\nAssisted-By: Claude (Opus 4.6)\nChange-Id: Idcee78e9286530a0a39c8ed969a290e97805ec09\nSigned-off-by: Harald Jensås \u003chjensas@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/networking-generic-switch/commit/ad49426d332dca18e964a0353f08fc255f08af3f"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/networking-generic-switch/commit/ad49426d332dca18e964a0353f08fc255f08af3f"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"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":"Backport-Candidate","description":"Backport candidate status","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":""}}}]}
