During sync process only network segments that are bound to a port should be
sent to CVX when creating instances. For that reason, the PortBindingLevel
table should be used to get list of segments bind to a given port.
We can infer the set of tenants to provision from the neutron
networks and ports tables. This is part of a larger effort to
remove any use of arista specific tables and instead make use
of the same data stored in other neutron tables.
This change broke the Arista CI. We also discovered that the Arista CI doesn't apply networking-arista changes when it runs, only neutron changes which is why the CI missed this.
This reverts commit a3aa15abd6.
arista_ml2.py was becoming quite large and a dumping ground for
code. This change begins the process of organizing the driver in
a more structured, and manageable way.