fix(2): ghost timeout 2400->900 — VM now 4 dedicated vCPU (operator), migration converges in minutes; short bounded budget fails fast on the migrations_lock deadlock instead of a long blackout
This commit is contained in:
@@ -8,15 +8,14 @@
|
|||||||
# mysqldump pre-hook; P4 (ops.py + test_{backup,restore,upgrade}.py) seeds a `ci_marker` row there.
|
# mysqldump pre-hook; P4 (ops.py + test_{backup,restore,upgrade}.py) seeds a `ci_marker` row there.
|
||||||
HEALTH_PATH = "/" # Ghost serves a themed site HTML at root (200)
|
HEALTH_PATH = "/" # Ghost serves a themed site HTML at root (200)
|
||||||
HEALTH_OK = (200,)
|
HEALTH_OK = (200,)
|
||||||
DEPLOY_TIMEOUT = 2400 # subprocess timeout for `abra app deploy`
|
DEPLOY_TIMEOUT = 900 # subprocess timeout for `abra app deploy`
|
||||||
HTTP_TIMEOUT = 900
|
HTTP_TIMEOUT = 900
|
||||||
|
|
||||||
# Ghost's first-boot does a full schema migration (dozens of tables) against a fresh MySQL `ghost`
|
# Ghost's first-boot does a full schema migration (dozens of tables) against a fresh MySQL `ghost`
|
||||||
# DB. On cc-ci's slow single node this takes ~6min, during which the recipe healthcheck
|
# DB. The migration must finish within the recipe healthcheck grace (start_period 1m + 10×30s ≈ 6min)
|
||||||
# (start_period 1m → ~5min grace) marks the still-booting task unhealthy and swarm kills it; the
|
# — otherwise swarm kills the still-migrating task, which leaves a stale `migrations_lock` row and
|
||||||
# NEXT task finds the schema already created and boots fast → converges. But the first task's
|
# every later task then refuses to boot (`MigrationsAreLockedError` deadlock). On the cc-ci node with
|
||||||
# migration + the early MySQL-not-ready (`exit 2`) app restarts can eat ~18min, so the default 1200s
|
# 4 dedicated vCPU the migration completes well inside that grace and the app converges in a few
|
||||||
# convergence wait timed out right as it was converging. Bump to 2400s (matched to DEPLOY_TIMEOUT) so
|
# minutes, so 900s is an ample-but-bounded budget (fails fast if the deadlock ever recurs, rather
|
||||||
# the post-migration fast-boot task has room to converge within one deploy (the volume persists
|
# than a long blackout). See DECISIONS (ghost MySQL cold-boot).
|
||||||
# across the in-deploy task restarts). Documented as heavy-recipe cold-boot fragility in DECISIONS.
|
EXTRA_ENV = {"TIMEOUT": "900"}
|
||||||
EXTRA_ENV = {"TIMEOUT": "2400"}
|
|
||||||
|
|||||||
Reference in New Issue
Block a user