Skip to content

ci: upload Playwright artifacts on E2E failure#10

Merged
nathanstitt merged 1 commit into
mainfrom
ci/playwright-artifacts
May 31, 2026
Merged

ci: upload Playwright artifacts on E2E failure#10
nathanstitt merged 1 commit into
mainfrom
ci/playwright-artifacts

Conversation

@nathanstitt
Copy link
Copy Markdown
Contributor

Summary

Adds Playwright artifact upload on E2E failure, mirroring the canonical pattern already in tinycld/text. Without this, when E2E fails on CI the trace/screenshot/video/error-context files Playwright produces are lost when the runner shuts down — making CI-only flakes hard to debug.

if: failure() skips the upload on green runs to save bandwidth + retention. 14-day retention matches text.

Triggered by a CI-only flake in tinycld/mail#3 (5 E2E tests failed on CI but couldn't be reproduced locally even with 15 reps across the same tests at CI's worker count). Without artifacts there was no way to see what the page looked like at the moment of failure.

Test plan

  • CI run on this PR succeeds (artifact step skipped on green path)
  • Future: when this repo's E2E fails on CI, artifacts will be downloadable via gh run download <run-id> --repo tinycld/<repo> for 14 days

Related

Mirrors the canonical pattern in tinycld/text. Without this, Playwright's
trace.zip, screenshot, video, and error-context.md are written to the
runner's filesystem on test failure but evaporate when the runner shuts
down — making CI-only flakes hard to diagnose without re-running.

`if: failure()` skips the upload on green runs. 14-day retention.

Bootstrap template gets the same change in tinycld/bootstrap#3 so future
packages inherit it.
@nathanstitt nathanstitt merged commit 25f3d1b into main May 31, 2026
2 checks passed
@nathanstitt nathanstitt deleted the ci/playwright-artifacts branch May 31, 2026 00:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant