Skip to content

Commit

Permalink
Add tenacity retries around ring sync check
Browse files Browse the repository at this point in the history
This fixes a race when checking if object ring is synced.

(cherry picked from commit 0598ecf)
  • Loading branch information
Corey Bryant authored and freyes committed Oct 12, 2023
1 parent 43b49f9 commit 58d1b3e
Showing 1 changed file with 9 additions and 3 deletions.
12 changes: 9 additions & 3 deletions zaza/openstack/charm_tests/swift/tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -132,9 +132,15 @@ def test_904_set_weight_action_and_validate_rebalance(self):
zaza.model.wait_for_agent_status()
zaza.model.block_until_all_units_idle()

self.assertTrue(
swift_utils.is_ring_synced('swift-proxy', 'object',
self.TEST_EXPECTED_RING_HOSTS))
for attempt in tenacity.Retrying(
wait=tenacity.wait_fixed(2),
retry=tenacity.retry_if_exception_type(AssertionError),
reraise=True,
stop=tenacity.stop_after_attempt(10)):
with attempt:
self.assertTrue(
swift_utils.is_ring_synced('swift-proxy', 'object',
self.TEST_EXPECTED_RING_HOSTS))

def test_905_remove_device_action_and_validate_rebalance(self):
"""Remove device from object ring."""
Expand Down

0 comments on commit 58d1b3e

Please sign in to comment.