{"push_id":1691366526,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"1ea39fa1997087b93ef328fceb0d085322c74a08","before":"bafac6e4a059ad2d80b0a36c7d0e99ccf8f1fd31","commits":[{"sha":"1ea39fa1997087b93ef328fceb0d085322c74a08","author":{"name":"Mark Goddard","email":"fd1ed290c28236090ee5c195ebfc58186b22ec62@stackhpc.com"},"message":"Ports not unplugged following unbind\n\nWhen using the networking genericswitch ML2 driver with ironic, neutron\nports on a tenant network are not unplugged after they have been\nunbound. This means that the corresponding port remains an untagged\nmember of the tenant network VLAN on the switch.\n\nThis was seen on a Dell/Force10 S6010-ON switch. These switches have\nslightly different CLI semantics than Cisco switches, which makes the\nplug/unplug operation non-idempotent. The non-idempotent nature of the\noperation means that a port that is an access port on one VLAN cannot be\nmade an access port on another VLAN using the 'plug' command alone - the\n'unplug' command is required as well. This means that without manual\nintervention, port configuration becomes a 'one shot' activity.\n\nThe NGS driver currently unplugs ports from VLANs only when ports are\ndeleted. However, since (at least) Ocata, ironic unbinds[0] ports before\nthey are deleted. This means that they lose their port binding\ninformation during an update operation, and therefore do not have the\ninformation required to unplug the port on the switch during the delete\noperation.\n\nThe solution to this is to add support for unplugging ports following an\nunbind operation. This change adds that support to the\nupdate_port_postcommit method of the NGS mechanism driver.\n\n[0]\nhttps://github.com/openstack/ironic/blob/19ced862a782f204048ca2cb7f4904d75a6d7925/ironic/drivers/modules/network/neutron.py#L199\n\nChange-Id: Ie4ea148793f9a754fae415c2661c6f2add6a97c8\nCloses-Bug: #1683687","distinct":true,"url":"https://api.github.com/repos/openstack/networking-generic-switch/commits/1ea39fa1997087b93ef328fceb0d085322c74a08"}]}
{"actor":{"display_login":"openstack-gerrit"}}