Populate network mtu for erspan
Change-Id: Ic4753ba768080149b54f391c44185ec27e006044
This commit is contained in:
parent
ceeeb71a0a
commit
f26eed9182
|
@ -1287,6 +1287,8 @@ class ApicMechanismDriver(api_plus.MechanismDriver,
|
||||||
cep_dn = self._map_port(session, port_db)
|
cep_dn = self._map_port(session, port_db)
|
||||||
resources = self._get_erspan_aim_resources_list(port_db, cep_dn)
|
resources = self._get_erspan_aim_resources_list(port_db, cep_dn)
|
||||||
if resources:
|
if resources:
|
||||||
|
self.update_summary_resource(session, resources,
|
||||||
|
port_db['network_id'])
|
||||||
aim_resources.extend(resources)
|
aim_resources.extend(resources)
|
||||||
binding = (port_db.port_bindings[0]
|
binding = (port_db.port_bindings[0]
|
||||||
if port_db.port_bindings else None)
|
if port_db.port_bindings else None)
|
||||||
|
@ -2793,6 +2795,18 @@ class ApicMechanismDriver(api_plus.MechanismDriver,
|
||||||
port['id'], cep_dn, erspan_config))
|
port['id'], cep_dn, erspan_config))
|
||||||
return resources
|
return resources
|
||||||
|
|
||||||
|
def update_summary_resource(self, session, resources, network_id):
|
||||||
|
for resource in resources:
|
||||||
|
if type(resource) == aim_resource.SpanVepgSummary:
|
||||||
|
with session.begin(subtransactions=True):
|
||||||
|
query = BAKERY(lambda s: s.query(
|
||||||
|
models_v2.Network))
|
||||||
|
query += lambda q: q.filter_by(
|
||||||
|
id=network_id)
|
||||||
|
net = query(session).params().first()
|
||||||
|
if net:
|
||||||
|
resource.mtu = net.mtu
|
||||||
|
|
||||||
def _get_acc_bundle_for_host(self, aim_ctx, host_name):
|
def _get_acc_bundle_for_host(self, aim_ctx, host_name):
|
||||||
if not host_name:
|
if not host_name:
|
||||||
return None
|
return None
|
||||||
|
@ -2837,6 +2851,9 @@ class ApicMechanismDriver(api_plus.MechanismDriver,
|
||||||
for erspan_config in port.get(cisco_apic.ERSPAN_CONFIG, []):
|
for erspan_config in port.get(cisco_apic.ERSPAN_CONFIG, []):
|
||||||
resources = self._get_erspan_aim_resources(port['id'], cep_dn,
|
resources = self._get_erspan_aim_resources(port['id'], cep_dn,
|
||||||
erspan_config)
|
erspan_config)
|
||||||
|
if resources:
|
||||||
|
self.update_summary_resource(session, resources,
|
||||||
|
port['network_id'])
|
||||||
# Create ERSPAN source group and source
|
# Create ERSPAN source group and source
|
||||||
if not self.aim.get(aim_ctx, resources[0]):
|
if not self.aim.get(aim_ctx, resources[0]):
|
||||||
self.aim.create(aim_ctx, resources[0])
|
self.aim.create(aim_ctx, resources[0])
|
||||||
|
@ -7228,6 +7245,8 @@ class ApicMechanismDriver(api_plus.MechanismDriver,
|
||||||
cep_dn = self._map_port(mgr.actual_session, port_db)
|
cep_dn = self._map_port(mgr.actual_session, port_db)
|
||||||
resources = self._get_erspan_aim_resources_list(port_db,
|
resources = self._get_erspan_aim_resources_list(port_db,
|
||||||
cep_dn)
|
cep_dn)
|
||||||
|
self.update_summary_resource(mgr.actual_session, resources,
|
||||||
|
port_db['network_id'])
|
||||||
# Copy the bundle group pre-existing resources, if they
|
# Copy the bundle group pre-existing resources, if they
|
||||||
# are monitored, from the actual AIM store to the validation
|
# are monitored, from the actual AIM store to the validation
|
||||||
# AIM store, so that the resource behaves as expected
|
# AIM store, so that the resource behaves as expected
|
||||||
|
|
|
@ -7777,7 +7777,7 @@ class TestExtensionAttributes(ApicAimTestCase):
|
||||||
name=dest_name)],
|
name=dest_name)],
|
||||||
[aim_resource.SpanVepgSummary(vdg_name=dest_name,
|
[aim_resource.SpanVepgSummary(vdg_name=dest_name,
|
||||||
vd_name=dest_name, dst_ip='192.168.0.10',
|
vd_name=dest_name, dst_ip='192.168.0.10',
|
||||||
flow_id='1023')]]
|
flow_id='1023', mtu=str(net['network']['mtu']))]]
|
||||||
dest_resources.append([
|
dest_resources.append([
|
||||||
aim_resource.InfraAccBundleGroup(name=host1_pg,
|
aim_resource.InfraAccBundleGroup(name=host1_pg,
|
||||||
span_vsource_group_names=[source_resources[0][0].name],
|
span_vsource_group_names=[source_resources[0][0].name],
|
||||||
|
@ -7809,7 +7809,7 @@ class TestExtensionAttributes(ApicAimTestCase):
|
||||||
name=dest_name))
|
name=dest_name))
|
||||||
dest_resources[2].append(aim_resource.SpanVepgSummary(
|
dest_resources[2].append(aim_resource.SpanVepgSummary(
|
||||||
vdg_name=dest_name, vd_name=dest_name, dst_ip='192.168.0.11',
|
vdg_name=dest_name, vd_name=dest_name, dst_ip='192.168.0.11',
|
||||||
flow_id='1022'))
|
flow_id='1022', mtu=str(net['network']['mtu'])))
|
||||||
dest_resources[3] = [aim_resource.InfraAccBundleGroup(
|
dest_resources[3] = [aim_resource.InfraAccBundleGroup(
|
||||||
name=host1_pg,
|
name=host1_pg,
|
||||||
span_vsource_group_names=[res.name for res in source_resources[0]],
|
span_vsource_group_names=[res.name for res in source_resources[0]],
|
||||||
|
@ -7865,8 +7865,8 @@ class TestExtensionAttributes(ApicAimTestCase):
|
||||||
[aim_resource.SpanVdest(vdg_name=dest_name,
|
[aim_resource.SpanVdest(vdg_name=dest_name,
|
||||||
name=dest_name)],
|
name=dest_name)],
|
||||||
[aim_resource.SpanVepgSummary(vdg_name=dest_name,
|
[aim_resource.SpanVepgSummary(vdg_name=dest_name,
|
||||||
vd_name=dest_name, dst_ip='192.168.0.10',
|
vd_name=dest_name, dst_ip='192.168.0.10', flow_id='1023',
|
||||||
flow_id='1023')]]
|
mtu=str(net['network']['mtu']))]]
|
||||||
dest_resources.append([aim_resource.InfraAccBundleGroup(
|
dest_resources.append([aim_resource.InfraAccBundleGroup(
|
||||||
name=host1_pg,
|
name=host1_pg,
|
||||||
span_vsource_group_names=[res.name for res in source_resources[0]],
|
span_vsource_group_names=[res.name for res in source_resources[0]],
|
||||||
|
|
Loading…
Reference in New Issue