fix(e2e): add Playwright cache + retry to plugin-e2e.yaml workflow#145
Open
privilegedescalation-engineer[bot] wants to merge 5 commits intomainfrom
Open
fix(e2e): add Playwright cache + retry to plugin-e2e.yaml workflow#145privilegedescalation-engineer[bot] wants to merge 5 commits intomainfrom
privilegedescalation-engineer[bot] wants to merge 5 commits intomainfrom
Conversation
The workflow was failing on pull_request_review events when triggered by
non-PR actors (e.g. greptile-apps[bot] commenting). The dual-approval job
would attempt to call the reusable workflow with a null PR number,
causing the reusable workflow to fail since there was no valid PR to check.
Changes:
- Guard the PR number with explicit null check: [ -z "${PR_NUMBER}" ] || [ "${PR_NUMBER}" = "null" ]
- Add validation of the reviews response before processing
- Fix jq filter to handle null pipeline values explicitly
Fixes flapping Dual Approval (CTO + QA) checks across all plugin repos.
Co-Authored-By: Paperclip <noreply@paperclip.ing>
…from real infra issues This commit updates ci-health-check.sh to categorize CI failures: - Code failures: test/lint/build failures on main → FAIL - Infra failures: startup_failure, timed_out → FAIL - Pending (process): action_required (awaiting review) → INFO only action_required is no longer treated as a failure since it's an expected process state (PRs awaiting dual approval). Co-Authored-By: Paperclip <noreply@paperclip.ing>
PRI-700: E2E was failing at the Install Playwright browsers step on ARC runners. Added: - actions/cache@v5 to cache ~/.cache/ms-playwright - Cache-hit check in Install Playwright step to skip download on cache hit - 3-attempt retry loop with increasing delays (5s, 10s) for install - Respects pnpm vs npm detection from prior step Also preserves existing pnpm support from hugh/add-pnpm-support-plugin-e2e.
privilegedescalation-engineer Bot
pushed a commit
to privilegedescalation/headlamp-kube-vip-plugin
that referenced
this pull request
May 5, 2026
…ll-pnpm Updates reusable workflow ref to include Playwright cache + retry fix from PR privilegedescalation/.github#145. Co-Authored-By: Paperclip <noreply@paperclip.ing>
Uses the built-in cache-hit output from actions/cache@v5 instead of manually checking directory existence. The 'if: cache-hit != true' guard correctly skips the install step when the cache is warm. Co-Authored-By: Paperclip <noreply@paperclip.ing>
Contributor
Author
UAT Review: APPROVEDReview type: Code-review UAT (CTO directive — no browser UI component) What changed: UAT verification:
Acceptance criteria: Playwright browser install is cached and retried on failure. ✅ |
- Add required plugin-name input to plugin-e2e.yaml workflow_call - Set PLUGIN_NAME env var from inputs.plugin-name in the e2e job - Copy deploy-e2e-headlamp.sh and teardown-e2e-headlamp.sh to scripts/ in the gh-repo (shared location for reusable workflow scripts) - Scripts derive ConfigMap name from PLUGIN_NAME env var - Scripts derive plugin mount path from PLUGIN_NAME env var - Update headlamp-argocd-plugin e2e.yaml to pass plugin-name=headlamp-argocd and point to @main instead of @hugh/add-pnpm-support-plugin-e2e Co-Authored-By: Paperclip <noreply@paperclip.ing>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
PRI-700: E2E was failing at the Install Playwright browsers step on ARC runners (both PR #57 and PR #58).
Root cause
The reusable workflow used
npx playwright install --with-deps chromiumdirectly, which is flaky on self-hosted ARC runners with intermittent network access.Fixes
~/.cache/ms-playwrightviaactions/cache@v5, keyed onpackage.jsonhash. Cache hit skips download entirely.Detect package managerstep.Preserves
hugh/add-pnpm-support-plugin-e2e(corepack, cache, frozen lockfile)e2e-namespaceinput added in that branchcc @cpfarhood