fixed apic synchronization state for multiple erspan session
Change-Id: Ifa41902518944702aeeb7f0b9e690f851199cdb1
This commit is contained in:
parent
549f0f3688
commit
3ce1d76a39
@ -1311,6 +1311,11 @@ class ApicMechanismDriver(api_plus.MechanismDriver,
|
||||
# the status objs for all of the associated AIM resources. Until
|
||||
# this happens, the sync_state is held as 'build' (unless it has
|
||||
# to be set to 'error').
|
||||
aim_resources = []
|
||||
for resource in resources:
|
||||
if resource not in aim_resources:
|
||||
aim_resources.append(resource)
|
||||
|
||||
aim_status_track[AIM_RESOURCES_CNT] = len(aim_resources)
|
||||
aim_resources_aggregate.extend(aim_resources)
|
||||
|
||||
|
@ -4241,6 +4241,16 @@ class TestSyncState(ApicAimTestCase):
|
||||
self._bind_port_to_host(p1['id'], 'host1')
|
||||
port = self._show('ports', p1['id'])['port']
|
||||
self.assertEqual(expected_state, port['apic:synchronization_state'])
|
||||
# Verify synchronization state for multiple erspan session
|
||||
if with_erspan:
|
||||
erspan_config['apic:erspan_config'].append(
|
||||
{'dest_ip': '192.168.0.11',
|
||||
'direction': 'in',
|
||||
'flow_id': '1022'})
|
||||
data = {'port': erspan_config}
|
||||
p1 = self._update('ports', p1['id'], data)['port']
|
||||
self.assertEqual(expected_state,
|
||||
port['apic:synchronization_state'])
|
||||
|
||||
def test_erspan_no_status(self):
|
||||
def get_status(self, context, resource, create_if_absent=True):
|
||||
|
Loading…
Reference in New Issue
Block a user