[FT] Add a retry method when reading the `Chassis_Private` register

This retry method is added in the ``test_check_metadata_started`` test.

Closes-Bug: #2116926
Signed-off-by: Rodolfo Alonso Hernandez <ralonsoh@redhat.com>
Change-Id: I773f08b78202158690976be3fb7957fd82723213
This commit is contained in:
Rodolfo Alonso Hernandez
2025-07-15 09:03:59 +00:00
parent a8b8a64648
commit d8697facb0

View File

@@ -132,6 +132,10 @@ class TestOVNNeutronAgentMetadataExtension(TestOVNNeutronAgentBase):
super().setUp(extensions=[METADATA_EXTENSION], **kwargs)
def test_check_metadata_started(self):
def check_extids(expected_ext_ids, chassis_name):
ch_private = self.sb_api.lookup('Chassis_Private', chassis_name)
return expected_ext_ids == ch_private.external_ids
# Check the metadata extension is registered.
chassis_id = uuid.UUID(self.chassis_name)
agent_id = uuid.uuid5(chassis_id, 'metadata_agent')
@@ -139,8 +143,9 @@ class TestOVNNeutronAgentMetadataExtension(TestOVNNeutronAgentBase):
ovn_const.OVN_AGENT_OVN_BRIDGE: 'br-int',
ovn_const.OVN_AGENT_NEUTRON_SB_CFG_KEY: '0',
}
ch_private = self.sb_api.lookup('Chassis_Private', self.chassis_name)
self.assertEqual(ext_ids, ch_private.external_ids)
n_utils.wait_until_true(
lambda: check_extids(ext_ids, self.chassis_name),
timeout=10)
# Check Unix proxy is running.
metadata_extension = self.ovn_agent[METADATA_EXTENSION]