CI: wrap test-two-browser-FTs commands in _retry_failed.sh
Pipeline #351 hit a NoSuchWindowException / browsing-context-discarded flake on the LAST channels FT (test_first_done_polarity_sees_other_group_settling_message) — typical cumulative-Firefox-memory-pressure failure on a multi-browser test run as the 22nd in its bucket. Test passes locally and in isolation; no code regression. The other two FT stages (test-FTs-room, test-FTs-non-room) already route through `_retry_failed.sh`, which parses Django's FAIL:/ERROR: lines from stdout and re-runs only the failed labels. Wrapping the three two-browser-FTs commands (two-browser / sequential / channels tags) in the same script gives the channels suite the same flake recovery without slowing the happy path (first-run-green short-circuits to exit 0). Code architected by Disco DeDisco <discodedisco@outlook.com> Git commit message Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -54,9 +54,18 @@ steps:
|
||||
# Also collectstatic'd here; output sits in the shared workspace so
|
||||
# the downstream FT steps don't have to repeat it.
|
||||
- python manage.py collectstatic --noinput
|
||||
- python manage.py test functional_tests --tag=two-browser
|
||||
- python manage.py test functional_tests --tag=sequential
|
||||
- python manage.py test functional_tests --tag=channels
|
||||
# All three tag-stages run through `_retry_failed.sh` so a single
|
||||
# browsing-context-discarded / NoSuchWindow flake on a multi-browser
|
||||
# channels FT (typically the LAST test in the suite, when Firefox
|
||||
# has accumulated memory pressure from 21 prior browser launches)
|
||||
# costs ~30s on retry instead of failing the whole step. Matches
|
||||
# the retry posture of test-FTs-room + test-FTs-non-room. First-
|
||||
# run-green still exits 0 immediately — no overhead in the happy
|
||||
# path. First-run-crash w. no parseable labels propagates the
|
||||
# original exit (genuine infra problems aren't masked).
|
||||
- bash ../.woodpecker/_retry_failed.sh functional_tests --tag=two-browser
|
||||
- bash ../.woodpecker/_retry_failed.sh functional_tests --tag=sequential
|
||||
- bash ../.woodpecker/_retry_failed.sh functional_tests --tag=channels
|
||||
when:
|
||||
- event: push
|
||||
path:
|
||||
|
||||
Reference in New Issue
Block a user