fix(runner): retry convergence confirmation after restore
continuous-integration/drone/push Build is failing
continuous-integration/drone/push Build is failing
This commit is contained in:
@@ -93,9 +93,15 @@ def assert_serving(domain: str, meta) -> None:
|
||||
Steps 1–2 are BOUNDED POLLS (no bare sleep), so a state-mutating op (upgrade/restore) that leaves
|
||||
the app briefly reconverging settles, while a persistent failure still fails within the timeout."""
|
||||
deadline = time.time() + meta.DEPLOY_TIMEOUT
|
||||
while time.time() < deadline and not lifecycle.services_converged(domain):
|
||||
converged = False
|
||||
while time.time() < deadline:
|
||||
# Keep both observations inside the retry budget: a service may restart
|
||||
# between the initial convergence sample and its confirmation.
|
||||
if lifecycle.services_converged(domain) and lifecycle.services_converged(domain):
|
||||
converged = True
|
||||
break
|
||||
time.sleep(5)
|
||||
assert lifecycle.services_converged(domain), f"{domain}: services did not converge"
|
||||
assert converged, f"{domain}: services did not converge"
|
||||
|
||||
path = meta.HEALTH_PATH
|
||||
ok = tuple(meta.HEALTH_OK)
|
||||
|
||||
Reference in New Issue
Block a user