[apic_aim] Map neutron resources to AIM, part 2
Neutron address scopes are mapped to AIM VRFs, with the DN and sync status available via extended attributes. Neutron networks are initially created with BDs that have routing disabled and are associated with a common unrouted VRF. The AIM display_name attribute has been implemented for the AIM objects mapped from networks and address scopes. New unit tests for the Neutron lifecyle operations have been added that validate the state of AIM objects after each operation. These also validate the apic:distinguished_name extension attributes. Redundant unit tests have been eliminated. Tracking the relationship between address scopes, subnetpools, subnets, networks and routers is not yet implemented. The original code mapping Neutron subnets to AIM Subnets has been removed. A subsequent patch implementing routers will create/delete AIM Subnets as Neutron subnets are added/deleted as router interfaces. Neutron address scopes are mapped to AIM VRFs, but these VRFs are not yet associatied with networks' BDs. This will also be done in a subsequent patch as Neutron subnets on those networks that are associated with address scopes are added as router interaces. An obvious bug in sync_state handling is also fixed, but unit tests to prevent regressions is still needed. The devstack plugin is also fixed to include the proxy_group extension driver. Change-Id: I8fef7809654924d4c3ff50bdf49188faba0684e0
This commit is contained in:
@@ -51,6 +51,10 @@ class ProjectNameCache(object):
|
||||
inside a transaction with a project_id not already in the
|
||||
cache.
|
||||
"""
|
||||
|
||||
# TODO(rkukura): It seems load_from_conf_options() and
|
||||
# keystoneclient auth plugins have been deprecated, and we
|
||||
# should use keystoneauth instead.
|
||||
if project_id not in self.project_names:
|
||||
if self.keystone is None:
|
||||
LOG.debug("Getting keystone client")
|
||||
|
||||
Reference in New Issue
Block a user